﻿2026-06-04T13:05:22.4550669Z ##[group]Run ./traceable-reqs check --json
2026-06-04T13:05:22.4552868Z [36;1m./traceable-reqs check --json[0m
2026-06-04T13:05:22.4576870Z shell: /usr/bin/bash -e {0}
2026-06-04T13:05:22.4578649Z ##[endgroup]
2026-06-04T13:05:22.4789846Z {
2026-06-04T13:05:22.4791285Z   "schemaVersion": 1,
2026-06-04T13:05:22.4792632Z   "summary": {
2026-06-04T13:05:22.4793971Z     "requirementCount": 129,
2026-06-04T13:05:22.4795489Z     "completeCount": 129,
2026-06-04T13:05:22.4796923Z     "incompleteCount": 0,
2026-06-04T13:05:22.4798338Z     "findingCount": 0
2026-06-04T13:05:22.4799668Z   },
2026-06-04T13:05:22.4800809Z   "requirements": [
2026-06-04T13:05:22.4802067Z     {
2026-06-04T13:05:22.4803214Z       "id": "REQ-API-1",
2026-06-04T13:05:22.4805143Z       "title": "api prefix and adapter_name on every machinery invocation",
2026-06-04T13:05:22.4807427Z       "requiredStages": [
2026-06-04T13:05:22.4808788Z         "impl",
2026-06-04T13:05:22.4810051Z         "unit",
2026-06-04T13:05:22.4811398Z         "int"
2026-06-04T13:05:22.4812723Z       ],
2026-06-04T13:05:22.4814696Z       "stages": {
2026-06-04T13:05:22.4827573Z         "doc": {
2026-06-04T13:05:22.4829122Z           "complete": false,
2026-06-04T13:05:22.4830672Z           "evidence": []
2026-06-04T13:05:22.4831978Z         },
2026-06-04T13:05:22.4833078Z         "impl": {
2026-06-04T13:05:22.4834318Z           "complete": true,
2026-06-04T13:05:22.4835704Z           "evidence": [
2026-06-04T13:05:22.4836969Z             {
2026-06-04T13:05:22.4838262Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T13:05:22.4840092Z               "line": 15
2026-06-04T13:05:22.4841474Z             }
2026-06-04T13:05:22.4842656Z           ]
2026-06-04T13:05:22.4843772Z         },
2026-06-04T13:05:22.4844885Z         "int": {
2026-06-04T13:05:22.4846183Z           "complete": true,
2026-06-04T13:05:22.4847692Z           "evidence": [
2026-06-04T13:05:22.4849032Z             {
2026-06-04T13:05:22.4850571Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T13:05:22.4852537Z               "line": 13
2026-06-04T13:05:22.4853856Z             }
2026-06-04T13:05:22.4854992Z           ]
2026-06-04T13:05:22.4856133Z         },
2026-06-04T13:05:22.4857252Z         "unit": {
2026-06-04T13:05:22.4858486Z           "complete": true,
2026-06-04T13:05:22.4860015Z           "evidence": [
2026-06-04T13:05:22.4861379Z             {
2026-06-04T13:05:22.4862769Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T13:05:22.4864606Z               "line": 336
2026-06-04T13:05:22.4865997Z             },
2026-06-04T13:05:22.4867198Z             {
2026-06-04T13:05:22.4868571Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T13:05:22.4870606Z               "line": 342
2026-06-04T13:05:22.4872163Z             },
2026-06-04T13:05:22.4873449Z             {
2026-06-04T13:05:22.4874841Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T13:05:22.4876642Z               "line": 353
2026-06-04T13:05:22.4877968Z             }
2026-06-04T13:05:22.4879241Z           ]
2026-06-04T13:05:22.4880432Z         }
2026-06-04T13:05:22.4881507Z       }
2026-06-04T13:05:22.4882585Z     },
2026-06-04T13:05:22.4883662Z     {
2026-06-04T13:05:22.4884797Z       "id": "REQ-API-2",
2026-06-04T13:05:22.4887015Z       "title": "The api subcommand surface (bind/listen/poll/state/worker/boundary/...)",
2026-06-04T13:05:22.4889677Z       "requiredStages": [
2026-06-04T13:05:22.4891034Z         "impl",
2026-06-04T13:05:22.4892192Z         "unit",
2026-06-04T13:05:22.4893388Z         "int"
2026-06-04T13:05:22.4894507Z       ],
2026-06-04T13:05:22.4895594Z       "stages": {
2026-06-04T13:05:22.4896785Z         "doc": {
2026-06-04T13:05:22.4898004Z           "complete": false,
2026-06-04T13:05:22.4900454Z           "evidence": []
2026-06-04T13:05:22.4902013Z         },
2026-06-04T13:05:22.4903201Z         "impl": {
2026-06-04T13:05:22.4904503Z           "complete": true,
2026-06-04T13:05:22.4905985Z           "evidence": [
2026-06-04T13:05:22.4907326Z             {
2026-06-04T13:05:22.4909579Z               "path": "crates/spt-store/src/history.rs",
2026-06-04T13:05:22.4911532Z               "line": 15
2026-06-04T13:05:22.4912918Z             },
2026-06-04T13:05:22.4914480Z             {
2026-06-04T13:05:22.4915957Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.4917942Z               "line": 20
2026-06-04T13:05:22.4919483Z             },
2026-06-04T13:05:22.4920760Z             {
2026-06-04T13:05:22.4922485Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.4924447Z               "line": 125
2026-06-04T13:05:22.4925836Z             },
2026-06-04T13:05:22.4927087Z             {
2026-06-04T13:05:22.4928547Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.4930622Z               "line": 21
2026-06-04T13:05:22.4931958Z             },
2026-06-04T13:05:22.4933133Z             {
2026-06-04T13:05:22.4934559Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.4936514Z               "line": 38
2026-06-04T13:05:22.4937901Z             },
2026-06-04T13:05:22.4939059Z             {
2026-06-04T13:05:22.4940556Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.4942460Z               "line": 160
2026-06-04T13:05:22.4943792Z             },
2026-06-04T13:05:22.4944947Z             {
2026-06-04T13:05:22.4946332Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.4948178Z               "line": 199
2026-06-04T13:05:22.4949554Z             },
2026-06-04T13:05:22.4950723Z             {
2026-06-04T13:05:22.4952122Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.4953956Z               "line": 223
2026-06-04T13:05:22.4955261Z             },
2026-06-04T13:05:22.4956407Z             {
2026-06-04T13:05:22.4957736Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T13:05:22.4959637Z               "line": 17
2026-06-04T13:05:22.4960940Z             },
2026-06-04T13:05:22.4962082Z             {
2026-06-04T13:05:22.4986422Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T13:05:22.4988345Z               "line": 30
2026-06-04T13:05:22.4989826Z             },
2026-06-04T13:05:22.4990988Z             {
2026-06-04T13:05:22.4992267Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T13:05:22.4993974Z               "line": 63
2026-06-04T13:05:22.4995220Z             },
2026-06-04T13:05:22.4996308Z             {
2026-06-04T13:05:22.4997593Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T13:05:22.4999478Z               "line": 76
2026-06-04T13:05:22.5000767Z             }
2026-06-04T13:05:22.5001880Z           ]
2026-06-04T13:05:22.5002964Z         },
2026-06-04T13:05:22.5004036Z         "int": {
2026-06-04T13:05:22.5005247Z           "complete": true,
2026-06-04T13:05:22.5006615Z           "evidence": [
2026-06-04T13:05:22.5007874Z             {
2026-06-04T13:05:22.5009288Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T13:05:22.5018537Z               "line": 14
2026-06-04T13:05:22.5020199Z             },
2026-06-04T13:05:22.5021297Z             {
2026-06-04T13:05:22.5022623Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T13:05:22.5024404Z               "line": 151
2026-06-04T13:05:22.5025670Z             }
2026-06-04T13:05:22.5026759Z           ]
2026-06-04T13:05:22.5027807Z         },
2026-06-04T13:05:22.5028872Z         "unit": {
2026-06-04T13:05:22.5030401Z           "complete": true,
2026-06-04T13:05:22.5031730Z           "evidence": [
2026-06-04T13:05:22.5032959Z             {
2026-06-04T13:05:22.5034277Z               "path": "crates/spt-store/src/history.rs",
2026-06-04T13:05:22.5036015Z               "line": 42
2026-06-04T13:05:22.5037255Z             },
2026-06-04T13:05:22.5038339Z             {
2026-06-04T13:05:22.5039983Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.5041716Z               "line": 204
2026-06-04T13:05:22.5042970Z             },
2026-06-04T13:05:22.5044070Z             {
2026-06-04T13:05:22.5046074Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.5047830Z               "line": 296
2026-06-04T13:05:22.5049084Z             },
2026-06-04T13:05:22.5050415Z             {
2026-06-04T13:05:22.5051764Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.5053544Z               "line": 307
2026-06-04T13:05:22.5054794Z             },
2026-06-04T13:05:22.5055889Z             {
2026-06-04T13:05:22.5057217Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.5058978Z               "line": 375
2026-06-04T13:05:22.5060597Z             },
2026-06-04T13:05:22.5061697Z             {
2026-06-04T13:05:22.5063044Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.5064822Z               "line": 387
2026-06-04T13:05:22.5066079Z             },
2026-06-04T13:05:22.5067168Z             {
2026-06-04T13:05:22.5068461Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T13:05:22.5070561Z               "line": 137
2026-06-04T13:05:22.5071838Z             },
2026-06-04T13:05:22.5072916Z             {
2026-06-04T13:05:22.5074185Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T13:05:22.5075904Z               "line": 172
2026-06-04T13:05:22.5077142Z             }
2026-06-04T13:05:22.5078194Z           ]
2026-06-04T13:05:22.5079245Z         }
2026-06-04T13:05:22.5080256Z       }
2026-06-04T13:05:22.5081245Z     },
2026-06-04T13:05:22.5082237Z     {
2026-06-04T13:05:22.5083262Z       "id": "REQ-API-3",
2026-06-04T13:05:22.5084880Z       "title": "commune/signoff are file-drops, not commands",
2026-06-04T13:05:22.5086813Z       "requiredStages": [
2026-06-04T13:05:22.5088080Z         "impl",
2026-06-04T13:05:22.5089152Z         "unit",
2026-06-04T13:05:22.5090269Z         "int"
2026-06-04T13:05:22.5091319Z       ],
2026-06-04T13:05:22.5092325Z       "stages": {
2026-06-04T13:05:22.5093422Z         "doc": {
2026-06-04T13:05:22.5094556Z           "complete": false,
2026-06-04T13:05:22.5095887Z           "evidence": []
2026-06-04T13:05:22.5097131Z         },
2026-06-04T13:05:22.5098144Z         "impl": {
2026-06-04T13:05:22.5099336Z           "complete": true,
2026-06-04T13:05:22.5100653Z           "evidence": [
2026-06-04T13:05:22.5101870Z             {
2026-06-04T13:05:22.5103127Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T13:05:22.5104807Z               "line": 27
2026-06-04T13:05:22.5106020Z             },
2026-06-04T13:05:22.5107075Z             {
2026-06-04T13:05:22.5108377Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.5110123Z               "line": 233
2026-06-04T13:05:22.5111338Z             }
2026-06-04T13:05:22.5112387Z           ]
2026-06-04T13:05:22.5113397Z         },
2026-06-04T13:05:22.5114410Z         "int": {
2026-06-04T13:05:22.5115533Z           "complete": true,
2026-06-04T13:05:22.5116827Z           "evidence": [
2026-06-04T13:05:22.5118013Z             {
2026-06-04T13:05:22.5119360Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T13:05:22.5121114Z               "line": 203
2026-06-04T13:05:22.5122347Z             }
2026-06-04T13:05:22.5123404Z           ]
2026-06-04T13:05:22.5124425Z         },
2026-06-04T13:05:22.5125454Z         "unit": {
2026-06-04T13:05:22.5126597Z           "complete": true,
2026-06-04T13:05:22.5127898Z           "evidence": [
2026-06-04T13:05:22.5129079Z             {
2026-06-04T13:05:22.5130367Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T13:05:22.5132049Z               "line": 230
2026-06-04T13:05:22.5133286Z             },
2026-06-04T13:05:22.5134334Z             {
2026-06-04T13:05:22.5135619Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.5137322Z               "line": 416
2026-06-04T13:05:22.5138535Z             }
2026-06-04T13:05:22.5139607Z           ]
2026-06-04T13:05:22.5140604Z         }
2026-06-04T13:05:22.5141586Z       }
2026-06-04T13:05:22.5142564Z     },
2026-06-04T13:05:22.5143551Z     {
2026-06-04T13:05:22.5144580Z       "id": "REQ-ARCH-1",
2026-06-04T13:05:22.5146337Z       "title": "Many small acyclically-layered crates",
2026-06-04T13:05:22.5148110Z       "requiredStages": [
2026-06-04T13:05:22.5149559Z         "impl"
2026-06-04T13:05:22.5150619Z       ],
2026-06-04T13:05:22.5151632Z       "stages": {
2026-06-04T13:05:22.5152727Z         "doc": {
2026-06-04T13:05:22.5153854Z           "complete": false,
2026-06-04T13:05:22.5155189Z           "evidence": []
2026-06-04T13:05:22.5156395Z         },
2026-06-04T13:05:22.5157417Z         "impl": {
2026-06-04T13:05:22.5158563Z           "complete": true,
2026-06-04T13:05:22.5159896Z           "evidence": [
2026-06-04T13:05:22.5161067Z             {
2026-06-04T13:05:22.5162277Z               "path": "crates/spt-msg/src/lib.rs",
2026-06-04T13:05:22.5163911Z               "line": 16
2026-06-04T13:05:22.5165120Z             },
2026-06-04T13:05:22.5166164Z             {
2026-06-04T13:05:22.5167398Z               "path": "crates/spt-proto/src/lib.rs",
2026-06-04T13:05:22.5169045Z               "line": 12
2026-06-04T13:05:22.5170313Z             },
2026-06-04T13:05:22.5171364Z             {
2026-06-04T13:05:22.5172588Z               "path": "crates/spt-store/src/lib.rs",
2026-06-04T13:05:22.5174252Z               "line": 12
2026-06-04T13:05:22.5175450Z             }
2026-06-04T13:05:22.5176487Z           ]
2026-06-04T13:05:22.5177483Z         },
2026-06-04T13:05:22.5178486Z         "int": {
2026-06-04T13:05:22.5179671Z           "complete": false,
2026-06-04T13:05:22.5181000Z           "evidence": []
2026-06-04T13:05:22.5182203Z         },
2026-06-04T13:05:22.5183221Z         "unit": {
2026-06-04T13:05:22.5184362Z           "complete": false,
2026-06-04T13:05:22.5185694Z           "evidence": []
2026-06-04T13:05:22.5186903Z         }
2026-06-04T13:05:22.5187896Z       }
2026-06-04T13:05:22.5188868Z     },
2026-06-04T13:05:22.5189875Z     {
2026-06-04T13:05:22.5190907Z       "id": "REQ-ARCH-2",
2026-06-04T13:05:22.5192659Z       "title": "Public SDK surface is spt-proto, spt-runtime, spt-msg",
2026-06-04T13:05:22.5194754Z       "requiredStages": [
2026-06-04T13:05:22.5196003Z         "impl"
2026-06-04T13:05:22.5197105Z       ],
2026-06-04T13:05:22.5198132Z       "stages": {
2026-06-04T13:05:22.5199274Z         "doc": {
2026-06-04T13:05:22.5200412Z           "complete": false,
2026-06-04T13:05:22.5201729Z           "evidence": []
2026-06-04T13:05:22.5202930Z         },
2026-06-04T13:05:22.5203959Z         "impl": {
2026-06-04T13:05:22.5205101Z           "complete": true,
2026-06-04T13:05:22.5206403Z           "evidence": [
2026-06-04T13:05:22.5207589Z             {
2026-06-04T13:05:22.5208848Z               "path": "crates/spt-runtime/src/lib.rs",
2026-06-04T13:05:22.5210559Z               "line": 18
2026-06-04T13:05:22.5211767Z             }
2026-06-04T13:05:22.5212799Z           ]
2026-06-04T13:05:22.5213810Z         },
2026-06-04T13:05:22.5214830Z         "int": {
2026-06-04T13:05:22.5216013Z           "complete": false,
2026-06-04T13:05:22.5217379Z           "evidence": []
2026-06-04T13:05:22.5218626Z         },
2026-06-04T13:05:22.5219712Z         "unit": {
2026-06-04T13:05:22.5220861Z           "complete": false,
2026-06-04T13:05:22.5222205Z           "evidence": []
2026-06-04T13:05:22.5223423Z         }
2026-06-04T13:05:22.5224416Z       }
2026-06-04T13:05:22.5225393Z     },
2026-06-04T13:05:22.5226377Z     {
2026-06-04T13:05:22.5227423Z       "id": "REQ-ARCH-3",
2026-06-04T13:05:22.5229532Z       "title": "Wire-protocol version independent of crate semver, N-1 compat window",
2026-06-04T13:05:22.5231945Z       "requiredStages": [
2026-06-04T13:05:22.5233201Z         "impl",
2026-06-04T13:05:22.5234273Z         "unit"
2026-06-04T13:05:22.5235334Z       ],
2026-06-04T13:05:22.5236344Z       "stages": {
2026-06-04T13:05:22.5237449Z         "doc": {
2026-06-04T13:05:22.5238581Z           "complete": false,
2026-06-04T13:05:22.5240345Z           "evidence": []
2026-06-04T13:05:22.5241573Z         },
2026-06-04T13:05:22.5242604Z         "impl": {
2026-06-04T13:05:22.5243752Z           "complete": true,
2026-06-04T13:05:22.5245277Z           "evidence": [
2026-06-04T13:05:22.5246465Z             {
2026-06-04T13:05:22.5247760Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T13:05:22.5249683Z               "line": 34
2026-06-04T13:05:22.5250900Z             },
2026-06-04T13:05:22.5251949Z             {
2026-06-04T13:05:22.5253243Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T13:05:22.5254952Z               "line": 41
2026-06-04T13:05:22.5256145Z             }
2026-06-04T13:05:22.5257188Z           ]
2026-06-04T13:05:22.5258198Z         },
2026-06-04T13:05:22.5259256Z         "int": {
2026-06-04T13:05:22.5260407Z           "complete": false,
2026-06-04T13:05:22.5261747Z           "evidence": []
2026-06-04T13:05:22.5262952Z         },
2026-06-04T13:05:22.5263977Z         "unit": {
2026-06-04T13:05:22.5265125Z           "complete": true,
2026-06-04T13:05:22.5266420Z           "evidence": [
2026-06-04T13:05:22.5267593Z             {
2026-06-04T13:05:22.5268885Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T13:05:22.5270665Z               "line": 51
2026-06-04T13:05:22.5271882Z             },
2026-06-04T13:05:22.5272968Z             {
2026-06-04T13:05:22.5274254Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T13:05:22.5275950Z               "line": 65
2026-06-04T13:05:22.5277147Z             },
2026-06-04T13:05:22.5278202Z             {
2026-06-04T13:05:22.5279530Z               "path": "crates/spt-proto/src/version.rs",
2026-06-04T13:05:22.5281237Z               "line": 74
2026-06-04T13:05:22.5282434Z             }
2026-06-04T13:05:22.5283486Z           ]
2026-06-04T13:05:22.5284492Z         }
2026-06-04T13:05:22.5285483Z       }
2026-06-04T13:05:22.5286468Z     },
2026-06-04T13:05:22.5287444Z     {
2026-06-04T13:05:22.5288475Z       "id": "REQ-ARCH-4",
2026-06-04T13:05:22.5290328Z       "title": "Copy-verbatim the commodity layer from the sister project",
2026-06-04T13:05:22.5292467Z       "requiredStages": [
2026-06-04T13:05:22.5293757Z         "impl",
2026-06-04T13:05:22.5294824Z         "unit"
2026-06-04T13:05:22.5295879Z       ],
2026-06-04T13:05:22.5296890Z       "stages": {
2026-06-04T13:05:22.5298002Z         "doc": {
2026-06-04T13:05:22.5311034Z           "complete": false,
2026-06-04T13:05:22.5312504Z           "evidence": []
2026-06-04T13:05:22.5313715Z         },
2026-06-04T13:05:22.5314748Z         "impl": {
2026-06-04T13:05:22.5315902Z           "complete": true,
2026-06-04T13:05:22.5317183Z           "evidence": [
2026-06-04T13:05:22.5318368Z             {
2026-06-04T13:05:22.5319690Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5321360Z               "line": 63
2026-06-04T13:05:22.5322557Z             },
2026-06-04T13:05:22.5323613Z             {
2026-06-04T13:05:22.5324866Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5326515Z               "line": 77
2026-06-04T13:05:22.5327723Z             },
2026-06-04T13:05:22.5328781Z             {
2026-06-04T13:05:22.5330130Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5331784Z               "line": 97
2026-06-04T13:05:22.5332978Z             },
2026-06-04T13:05:22.5334045Z             {
2026-06-04T13:05:22.5335298Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5336939Z               "line": 112
2026-06-04T13:05:22.5338165Z             },
2026-06-04T13:05:22.5339243Z             {
2026-06-04T13:05:22.5340494Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5342152Z               "line": 162
2026-06-04T13:05:22.5343343Z             }
2026-06-04T13:05:22.5344380Z           ]
2026-06-04T13:05:22.5345395Z         },
2026-06-04T13:05:22.5346400Z         "int": {
2026-06-04T13:05:22.5347533Z           "complete": false,
2026-06-04T13:05:22.5348867Z           "evidence": []
2026-06-04T13:05:22.5350131Z         },
2026-06-04T13:05:22.5351147Z         "unit": {
2026-06-04T13:05:22.5352280Z           "complete": true,
2026-06-04T13:05:22.5353972Z           "evidence": [
2026-06-04T13:05:22.5355147Z             {
2026-06-04T13:05:22.5356393Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5358325Z               "line": 226
2026-06-04T13:05:22.5359586Z             },
2026-06-04T13:05:22.5360674Z             {
2026-06-04T13:05:22.5361958Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5363624Z               "line": 236
2026-06-04T13:05:22.5364840Z             },
2026-06-04T13:05:22.5365893Z             {
2026-06-04T13:05:22.5367139Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5368804Z               "line": 247
2026-06-04T13:05:22.5370067Z             },
2026-06-04T13:05:22.5371135Z             {
2026-06-04T13:05:22.5372389Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5374056Z               "line": 258
2026-06-04T13:05:22.5375275Z             },
2026-06-04T13:05:22.5376330Z             {
2026-06-04T13:05:22.5377576Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5379298Z               "line": 270
2026-06-04T13:05:22.5380524Z             },
2026-06-04T13:05:22.5381613Z             {
2026-06-04T13:05:22.5382865Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5384522Z               "line": 283
2026-06-04T13:05:22.5385746Z             },
2026-06-04T13:05:22.5386796Z             {
2026-06-04T13:05:22.5388048Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5389748Z               "line": 294
2026-06-04T13:05:22.5390964Z             },
2026-06-04T13:05:22.5392026Z             {
2026-06-04T13:05:22.5393268Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5394912Z               "line": 308
2026-06-04T13:05:22.5396127Z             },
2026-06-04T13:05:22.5397183Z             {
2026-06-04T13:05:22.5398439Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.5400142Z               "line": 336
2026-06-04T13:05:22.5401361Z             }
2026-06-04T13:05:22.5402410Z           ]
2026-06-04T13:05:22.5403435Z         }
2026-06-04T13:05:22.5404428Z       }
2026-06-04T13:05:22.5405405Z     },
2026-06-04T13:05:22.5406399Z     {
2026-06-04T13:05:22.5407428Z       "id": "REQ-DAEMON-1",
2026-06-04T13:05:22.5409263Z       "title": "One per-machine spt-daemon owning all per-machine state",
2026-06-04T13:05:22.5411386Z       "requiredStages": [
2026-06-04T13:05:22.5412649Z         "impl",
2026-06-04T13:05:22.5413738Z         "unit",
2026-06-04T13:05:22.5444589Z         "int"
2026-06-04T13:05:22.5446169Z       ],
2026-06-04T13:05:22.5447199Z       "stages": {
2026-06-04T13:05:22.5448298Z         "doc": {
2026-06-04T13:05:22.5449659Z           "complete": false,
2026-06-04T13:05:22.5451146Z           "evidence": []
2026-06-04T13:05:22.5452337Z         },
2026-06-04T13:05:22.5453352Z         "impl": {
2026-06-04T13:05:22.5454490Z           "complete": true,
2026-06-04T13:05:22.5455798Z           "evidence": [
2026-06-04T13:05:22.5456961Z             {
2026-06-04T13:05:22.5458321Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T13:05:22.5460329Z               "line": 12
2026-06-04T13:05:22.5461553Z             },
2026-06-04T13:05:22.5462613Z             {
2026-06-04T13:05:22.5463909Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.5465658Z               "line": 16
2026-06-04T13:05:22.5466861Z             },
2026-06-04T13:05:22.5467912Z             {
2026-06-04T13:05:22.5469197Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T13:05:22.5471143Z               "line": 15
2026-06-04T13:05:22.5472336Z             },
2026-06-04T13:05:22.5473391Z             {
2026-06-04T13:05:22.5474609Z               "path": "crates/spt/src/api/live.rs",
2026-06-04T13:05:22.5476225Z               "line": 13
2026-06-04T13:05:22.5477425Z             }
2026-06-04T13:05:22.5478460Z           ]
2026-06-04T13:05:22.5479670Z         },
2026-06-04T13:05:22.5480698Z         "int": {
2026-06-04T13:05:22.5481834Z           "complete": true,
2026-06-04T13:05:22.5483625Z           "evidence": [
2026-06-04T13:05:22.5484804Z             {
2026-06-04T13:05:22.5486146Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T13:05:22.5488082Z               "line": 32
2026-06-04T13:05:22.5489335Z             }
2026-06-04T13:05:22.5490388Z           ]
2026-06-04T13:05:22.5491389Z         },
2026-06-04T13:05:22.5492392Z         "unit": {
2026-06-04T13:05:22.5493530Z           "complete": true,
2026-06-04T13:05:22.5494809Z           "evidence": [
2026-06-04T13:05:22.5495974Z             {
2026-06-04T13:05:22.5497237Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T13:05:22.5498927Z               "line": 242
2026-06-04T13:05:22.5500177Z             },
2026-06-04T13:05:22.5501231Z             {
2026-06-04T13:05:22.5502507Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T13:05:22.5504195Z               "line": 250
2026-06-04T13:05:22.5505403Z             },
2026-06-04T13:05:22.5506474Z             {
2026-06-04T13:05:22.5507753Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T13:05:22.5509672Z               "line": 263
2026-06-04T13:05:22.5511066Z             },
2026-06-04T13:05:22.5512122Z             {
2026-06-04T13:05:22.5513406Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T13:05:22.5515077Z               "line": 271
2026-06-04T13:05:22.5516285Z             },
2026-06-04T13:05:22.5517344Z             {
2026-06-04T13:05:22.5518638Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.5520403Z               "line": 528
2026-06-04T13:05:22.5521641Z             },
2026-06-04T13:05:22.5522691Z             {
2026-06-04T13:05:22.5523974Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.5525704Z               "line": 587
2026-06-04T13:05:22.5526908Z             },
2026-06-04T13:05:22.5527962Z             {
2026-06-04T13:05:22.5529257Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T13:05:22.5530953Z               "line": 100
2026-06-04T13:05:22.5532168Z             },
2026-06-04T13:05:22.5533215Z             {
2026-06-04T13:05:22.5534484Z               "path": "crates/spt-daemon/src/relay.rs",
2026-06-04T13:05:22.5536146Z               "line": 125
2026-06-04T13:05:22.5537344Z             }
2026-06-04T13:05:22.5538373Z           ]
2026-06-04T13:05:22.5539415Z         }
2026-06-04T13:05:22.5540400Z       }
2026-06-04T13:05:22.5541374Z     },
2026-06-04T13:05:22.5542372Z     {
2026-06-04T13:05:22.5543405Z       "id": "REQ-DAEMON-2",
2026-06-04T13:05:22.5545015Z       "title": "Broker/brain split for seamless self-update",
2026-06-04T13:05:22.5546844Z       "requiredStages": [
2026-06-04T13:05:22.5548076Z         "impl",
2026-06-04T13:05:22.5549122Z         "unit",
2026-06-04T13:05:22.5555673Z         "int"
2026-06-04T13:05:22.5556778Z       ],
2026-06-04T13:05:22.5557776Z       "stages": {
2026-06-04T13:05:22.5558871Z         "doc": {
2026-06-04T13:05:22.5560077Z           "complete": false,
2026-06-04T13:05:22.5561421Z           "evidence": []
2026-06-04T13:05:22.5562608Z         },
2026-06-04T13:05:22.5563610Z         "impl": {
2026-06-04T13:05:22.5564746Z           "complete": true,
2026-06-04T13:05:22.5566004Z           "evidence": [
2026-06-04T13:05:22.5567150Z             {
2026-06-04T13:05:22.5568386Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T13:05:22.5570091Z               "line": 23
2026-06-04T13:05:22.5571276Z             },
2026-06-04T13:05:22.5572307Z             {
2026-06-04T13:05:22.5573543Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T13:05:22.5575179Z               "line": 489
2026-06-04T13:05:22.5576369Z             },
2026-06-04T13:05:22.5577400Z             {
2026-06-04T13:05:22.5578632Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T13:05:22.5580339Z               "line": 612
2026-06-04T13:05:22.5581526Z             },
2026-06-04T13:05:22.5582553Z             {
2026-06-04T13:05:22.5583804Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T13:05:22.5585798Z               "line": 32
2026-06-04T13:05:22.5586977Z             },
2026-06-04T13:05:22.5588172Z             {
2026-06-04T13:05:22.5589482Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T13:05:22.5591157Z               "line": 191
2026-06-04T13:05:22.5592335Z             },
2026-06-04T13:05:22.5593366Z             {
2026-06-04T13:05:22.5594612Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T13:05:22.5596267Z               "line": 510
2026-06-04T13:05:22.5597443Z             },
2026-06-04T13:05:22.5598469Z             {
2026-06-04T13:05:22.5599768Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T13:05:22.5601422Z               "line": 679
2026-06-04T13:05:22.5602605Z             },
2026-06-04T13:05:22.5603626Z             {
2026-06-04T13:05:22.5604847Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T13:05:22.5606476Z               "line": 11
2026-06-04T13:05:22.5607672Z             },
2026-06-04T13:05:22.5608697Z             {
2026-06-04T13:05:22.5609981Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T13:05:22.5611651Z               "line": 53
2026-06-04T13:05:22.5612824Z             },
2026-06-04T13:05:22.5613851Z             {
2026-06-04T13:05:22.5615085Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T13:05:22.5616693Z               "line": 13
2026-06-04T13:05:22.5617866Z             },
2026-06-04T13:05:22.5618896Z             {
2026-06-04T13:05:22.5620195Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.5621863Z               "line": 27
2026-06-04T13:05:22.5623050Z             },
2026-06-04T13:05:22.5624075Z             {
2026-06-04T13:05:22.5625335Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.5626998Z               "line": 94
2026-06-04T13:05:22.5628163Z             },
2026-06-04T13:05:22.5629222Z             {
2026-06-04T13:05:22.5630474Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.5632158Z               "line": 393
2026-06-04T13:05:22.5633348Z             },
2026-06-04T13:05:22.5634390Z             {
2026-06-04T13:05:22.5635672Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.5637334Z               "line": 460
2026-06-04T13:05:22.5638520Z             },
2026-06-04T13:05:22.5639581Z             {
2026-06-04T13:05:22.5640836Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.5642506Z               "line": 494
2026-06-04T13:05:22.5643713Z             },
2026-06-04T13:05:22.5644748Z             {
2026-06-04T13:05:22.5646004Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.5647678Z               "line": 536
2026-06-04T13:05:22.5648866Z             },
2026-06-04T13:05:22.5649940Z             {
2026-06-04T13:05:22.5651202Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.5652865Z               "line": 581
2026-06-04T13:05:22.5654071Z             },
2026-06-04T13:05:22.5655110Z             {
2026-06-04T13:05:22.5656386Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T13:05:22.5658090Z               "line": 10
2026-06-04T13:05:22.5663415Z             }
2026-06-04T13:05:22.5664571Z           ]
2026-06-04T13:05:22.5665565Z         },
2026-06-04T13:05:22.5666550Z         "int": {
2026-06-04T13:05:22.5667660Z           "complete": true,
2026-06-04T13:05:22.5668933Z           "evidence": [
2026-06-04T13:05:22.5670176Z             {
2026-06-04T13:05:22.5671441Z               "path": "crates/spt-daemon/tests/broker.rs",
2026-06-04T13:05:22.5673110Z               "line": 17
2026-06-04T13:05:22.5674279Z             },
2026-06-04T13:05:22.5675316Z             {
2026-06-04T13:05:22.5676615Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T13:05:22.5678326Z               "line": 33
2026-06-04T13:05:22.5679584Z             },
2026-06-04T13:05:22.5680654Z             {
2026-06-04T13:05:22.5682254Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-04T13:05:22.5683950Z               "line": 19
2026-06-04T13:05:22.5685345Z             },
2026-06-04T13:05:22.5686374Z             {
2026-06-04T13:05:22.5687669Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T13:05:22.5689434Z               "line": 70
2026-06-04T13:05:22.5690613Z             },
2026-06-04T13:05:22.5691640Z             {
2026-06-04T13:05:22.5692938Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T13:05:22.5694666Z               "line": 90
2026-06-04T13:05:22.5695847Z             },
2026-06-04T13:05:22.5696880Z             {
2026-06-04T13:05:22.5698180Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T13:05:22.5699955Z               "line": 160
2026-06-04T13:05:22.5701136Z             },
2026-06-04T13:05:22.5702172Z             {
2026-06-04T13:05:22.5703476Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T13:05:22.5705213Z               "line": 196
2026-06-04T13:05:22.5706390Z             },
2026-06-04T13:05:22.5707416Z             {
2026-06-04T13:05:22.5708716Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-04T13:05:22.5710498Z               "line": 121
2026-06-04T13:05:22.5711661Z             }
2026-06-04T13:05:22.5712682Z           ]
2026-06-04T13:05:22.5713657Z         },
2026-06-04T13:05:22.5714646Z         "unit": {
2026-06-04T13:05:22.5715765Z           "complete": true,
2026-06-04T13:05:22.5717062Z           "evidence": [
2026-06-04T13:05:22.5718235Z             {
2026-06-04T13:05:22.5719520Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T13:05:22.5721156Z               "line": 62
2026-06-04T13:05:22.5722332Z             },
2026-06-04T13:05:22.5723368Z             {
2026-06-04T13:05:22.5724599Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T13:05:22.5726223Z               "line": 76
2026-06-04T13:05:22.5727386Z             },
2026-06-04T13:05:22.5728442Z             {
2026-06-04T13:05:22.5729716Z               "path": "crates/spt-daemon/src/codec.rs",
2026-06-04T13:05:22.5731347Z               "line": 88
2026-06-04T13:05:22.5732530Z             },
2026-06-04T13:05:22.5733572Z             {
2026-06-04T13:05:22.5734821Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T13:05:22.5736463Z               "line": 264
2026-06-04T13:05:22.5737655Z             },
2026-06-04T13:05:22.5738681Z             {
2026-06-04T13:05:22.5739918Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T13:05:22.5741522Z               "line": 506
2026-06-04T13:05:22.5742700Z             },
2026-06-04T13:05:22.5743726Z             {
2026-06-04T13:05:22.5744940Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T13:05:22.5746546Z               "line": 514
2026-06-04T13:05:22.5747721Z             },
2026-06-04T13:05:22.5748748Z             {
2026-06-04T13:05:22.5749991Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T13:05:22.5751609Z               "line": 531
2026-06-04T13:05:22.5752797Z             },
2026-06-04T13:05:22.5753829Z             {
2026-06-04T13:05:22.5755042Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T13:05:22.5756668Z               "line": 576
2026-06-04T13:05:22.5757855Z             },
2026-06-04T13:05:22.5758895Z             {
2026-06-04T13:05:22.5760192Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.5761844Z               "line": 648
2026-06-04T13:05:22.5763032Z             },
2026-06-04T13:05:22.5764055Z             {
2026-06-04T13:05:22.5765304Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.5766960Z               "line": 660
2026-06-04T13:05:22.5772260Z             },
2026-06-04T13:05:22.5773414Z             {
2026-06-04T13:05:22.5774702Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T13:05:22.5776398Z               "line": 112
2026-06-04T13:05:22.5777572Z             }
2026-06-04T13:05:22.5778891Z           ]
2026-06-04T13:05:22.5779939Z         }
2026-06-04T13:05:22.5780914Z       }
2026-06-04T13:05:22.5781862Z     },
2026-06-04T13:05:22.5782813Z     {
2026-06-04T13:05:22.5783973Z       "id": "REQ-DAEMON-3",
2026-06-04T13:05:22.5785642Z       "title": "Any api invocation auto-starts the daemon if absent",
2026-06-04T13:05:22.5787588Z       "requiredStages": [
2026-06-04T13:05:22.5788802Z         "impl",
2026-06-04T13:05:22.5789894Z         "unit",
2026-06-04T13:05:22.5790926Z         "int"
2026-06-04T13:05:22.5791948Z       ],
2026-06-04T13:05:22.5792920Z       "stages": {
2026-06-04T13:05:22.5793987Z         "doc": {
2026-06-04T13:05:22.5795088Z           "complete": false,
2026-06-04T13:05:22.5796374Z           "evidence": []
2026-06-04T13:05:22.5797531Z         },
2026-06-04T13:05:22.5798521Z         "impl": {
2026-06-04T13:05:22.5799677Z           "complete": true,
2026-06-04T13:05:22.5800943Z           "evidence": [
2026-06-04T13:05:22.5802081Z             {
2026-06-04T13:05:22.5803322Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T13:05:22.5804987Z               "line": 14
2026-06-04T13:05:22.5806150Z             },
2026-06-04T13:05:22.5807184Z             {
2026-06-04T13:05:22.5808442Z               "path": "crates/spt-daemon/src/endpoint.rs",
2026-06-04T13:05:22.5810155Z               "line": 11
2026-06-04T13:05:22.5811321Z             },
2026-06-04T13:05:22.5812358Z             {
2026-06-04T13:05:22.5813522Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T13:05:22.5815105Z               "line": 209
2026-06-04T13:05:22.5816275Z             },
2026-06-04T13:05:22.5817287Z             {
2026-06-04T13:05:22.5818421Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.5819991Z               "line": 362
2026-06-04T13:05:22.5821167Z             }
2026-06-04T13:05:22.5822189Z           ]
2026-06-04T13:05:22.5823166Z         },
2026-06-04T13:05:22.5824146Z         "int": {
2026-06-04T13:05:22.5825245Z           "complete": true,
2026-06-04T13:05:22.5826511Z           "evidence": [
2026-06-04T13:05:22.5827642Z             {
2026-06-04T13:05:22.5828886Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T13:05:22.5830565Z               "line": 43
2026-06-04T13:05:22.5831728Z             },
2026-06-04T13:05:22.5832751Z             {
2026-06-04T13:05:22.5833998Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T13:05:22.5835637Z               "line": 320
2026-06-04T13:05:22.5836816Z             }
2026-06-04T13:05:22.5837824Z           ]
2026-06-04T13:05:22.5838793Z         },
2026-06-04T13:05:22.5839817Z         "unit": {
2026-06-04T13:05:22.5840933Z           "complete": true,
2026-06-04T13:05:22.5842198Z           "evidence": [
2026-06-04T13:05:22.5843339Z             {
2026-06-04T13:05:22.5844571Z               "path": "crates/spt-daemon/src/daemon.rs",
2026-06-04T13:05:22.5846213Z               "line": 242
2026-06-04T13:05:22.5847379Z             }
2026-06-04T13:05:22.5848388Z           ]
2026-06-04T13:05:22.5849408Z         }
2026-06-04T13:05:22.5850389Z       }
2026-06-04T13:05:22.5851329Z     },
2026-06-04T13:05:22.5852274Z     {
2026-06-04T13:05:22.5853275Z       "id": "REQ-DAEMON-4",
2026-06-04T13:05:22.5854740Z       "title": "Honor every KNOWN-HAZARDS invariant",
2026-06-04T13:05:22.5856416Z       "requiredStages": [
2026-06-04T13:05:22.5857623Z         "impl",
2026-06-04T13:05:22.5858665Z         "unit",
2026-06-04T13:05:22.5859733Z         "int"
2026-06-04T13:05:22.5860736Z       ],
2026-06-04T13:05:22.5861723Z       "stages": {
2026-06-04T13:05:22.5862796Z         "doc": {
2026-06-04T13:05:22.5863896Z           "complete": false,
2026-06-04T13:05:22.5865173Z           "evidence": []
2026-06-04T13:05:22.5866341Z         },
2026-06-04T13:05:22.5867322Z         "impl": {
2026-06-04T13:05:22.5868430Z           "complete": true,
2026-06-04T13:05:22.5873734Z           "evidence": [
2026-06-04T13:05:22.5874946Z             {
2026-06-04T13:05:22.5876206Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.5878184Z               "line": 339
2026-06-04T13:05:22.5879456Z             },
2026-06-04T13:05:22.5880526Z             {
2026-06-04T13:05:22.5882056Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.5883757Z               "line": 401
2026-06-04T13:05:22.5884931Z             },
2026-06-04T13:05:22.5885944Z             {
2026-06-04T13:05:22.5887196Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.5888888Z               "line": 423
2026-06-04T13:05:22.5890125Z             }
2026-06-04T13:05:22.5891151Z           ]
2026-06-04T13:05:22.5892135Z         },
2026-06-04T13:05:22.5893118Z         "int": {
2026-06-04T13:05:22.5894219Z           "complete": true,
2026-06-04T13:05:22.5895467Z           "evidence": [
2026-06-04T13:05:22.5896601Z             {
2026-06-04T13:05:22.5897914Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T13:05:22.5899685Z               "line": 34
2026-06-04T13:05:22.5900866Z             }
2026-06-04T13:05:22.5901898Z           ]
2026-06-04T13:05:22.5902882Z         },
2026-06-04T13:05:22.5904026Z         "unit": {
2026-06-04T13:05:22.5905541Z           "complete": true,
2026-06-04T13:05:22.5907451Z           "evidence": [
2026-06-04T13:05:22.5908987Z             {
2026-06-04T13:05:22.5910885Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T13:05:22.5912722Z               "line": 340
2026-06-04T13:05:22.5913890Z             },
2026-06-04T13:05:22.5914910Z             {
2026-06-04T13:05:22.5916172Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.5917850Z               "line": 717
2026-06-04T13:05:22.5919035Z             },
2026-06-04T13:05:22.5920116Z             {
2026-06-04T13:05:22.5921388Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.5923052Z               "line": 768
2026-06-04T13:05:22.5924224Z             },
2026-06-04T13:05:22.5925241Z             {
2026-06-04T13:05:22.5926511Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.5928235Z               "line": 792
2026-06-04T13:05:22.5929457Z             },
2026-06-04T13:05:22.5930472Z             {
2026-06-04T13:05:22.5931749Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.5933423Z               "line": 822
2026-06-04T13:05:22.5934596Z             }
2026-06-04T13:05:22.5935601Z           ]
2026-06-04T13:05:22.5936579Z         }
2026-06-04T13:05:22.5937557Z       }
2026-06-04T13:05:22.5938505Z     },
2026-06-04T13:05:22.5939501Z     {
2026-06-04T13:05:22.5940546Z       "id": "REQ-DOCS-1",
2026-06-04T13:05:22.5942503Z       "title": "Dual-audience docs (human + AI dev-agent), markdown once / two depths",
2026-06-04T13:05:22.5944793Z       "requiredStages": [],
2026-06-04T13:05:22.5946040Z       "stages": {
2026-06-04T13:05:22.5947114Z         "doc": {
2026-06-04T13:05:22.5948231Z           "complete": false,
2026-06-04T13:05:22.5949549Z           "evidence": []
2026-06-04T13:05:22.5950718Z         },
2026-06-04T13:05:22.5951720Z         "impl": {
2026-06-04T13:05:22.5952842Z           "complete": false,
2026-06-04T13:05:22.5954124Z           "evidence": []
2026-06-04T13:05:22.5955323Z         },
2026-06-04T13:05:22.5956313Z         "int": {
2026-06-04T13:05:22.5957407Z           "complete": false,
2026-06-04T13:05:22.5958684Z           "evidence": []
2026-06-04T13:05:22.5959885Z         },
2026-06-04T13:05:22.5960881Z         "unit": {
2026-06-04T13:05:22.5961994Z           "complete": false,
2026-06-04T13:05:22.5963295Z           "evidence": []
2026-06-04T13:05:22.5964457Z         }
2026-06-04T13:05:22.5965426Z       }
2026-06-04T13:05:22.5966375Z     },
2026-06-04T13:05:22.5967334Z     {
2026-06-04T13:05:22.5968328Z       "id": "REQ-DOCS-2",
2026-06-04T13:05:22.5970029Z       "title": "Sub-10-minute runnable killer quickstart per audience",
2026-06-04T13:05:22.5972004Z       "requiredStages": [],
2026-06-04T13:05:22.5973256Z       "stages": {
2026-06-04T13:05:22.5974334Z         "doc": {
2026-06-04T13:05:22.5975800Z           "complete": false,
2026-06-04T13:05:22.5977077Z           "evidence": []
2026-06-04T13:05:22.5983619Z         },
2026-06-04T13:05:22.5985029Z         "impl": {
2026-06-04T13:05:22.5986172Z           "complete": false,
2026-06-04T13:05:22.5987467Z           "evidence": []
2026-06-04T13:05:22.5988636Z         },
2026-06-04T13:05:22.5989850Z         "int": {
2026-06-04T13:05:22.5990989Z           "complete": false,
2026-06-04T13:05:22.5992280Z           "evidence": []
2026-06-04T13:05:22.5993452Z         },
2026-06-04T13:05:22.5994446Z         "unit": {
2026-06-04T13:05:22.5995559Z           "complete": false,
2026-06-04T13:05:22.5996845Z           "evidence": []
2026-06-04T13:05:22.5998005Z         }
2026-06-04T13:05:22.5998983Z       }
2026-06-04T13:05:22.5999989Z     },
2026-06-04T13:05:22.6000960Z     {
2026-06-04T13:05:22.6001963Z       "id": "REQ-DOCS-3",
2026-06-04T13:05:22.6004032Z       "title": "Diátaxis structure; one canonical way to do X",
2026-06-04T13:05:22.6005925Z       "requiredStages": [],
2026-06-04T13:05:22.6007191Z       "stages": {
2026-06-04T13:05:22.6008252Z         "doc": {
2026-06-04T13:05:22.6009422Z           "complete": false,
2026-06-04T13:05:22.6010717Z           "evidence": []
2026-06-04T13:05:22.6011897Z         },
2026-06-04T13:05:22.6012885Z         "impl": {
2026-06-04T13:05:22.6014001Z           "complete": false,
2026-06-04T13:05:22.6015273Z           "evidence": []
2026-06-04T13:05:22.6016437Z         },
2026-06-04T13:05:22.6017418Z         "int": {
2026-06-04T13:05:22.6018511Z           "complete": false,
2026-06-04T13:05:22.6019843Z           "evidence": []
2026-06-04T13:05:22.6021010Z         },
2026-06-04T13:05:22.6022004Z         "unit": {
2026-06-04T13:05:22.6023097Z           "complete": false,
2026-06-04T13:05:22.6024368Z           "evidence": []
2026-06-04T13:05:22.6025533Z         }
2026-06-04T13:05:22.6026490Z       }
2026-06-04T13:05:22.6027434Z     },
2026-06-04T13:05:22.6028377Z     {
2026-06-04T13:05:22.6029419Z       "id": "REQ-DOCS-4",
2026-06-04T13:05:22.6031349Z       "title": "Agent-consumable layer (llms.txt, manifest schema, MCP, CLI help)",
2026-06-04T13:05:22.6033614Z       "requiredStages": [],
2026-06-04T13:05:22.6034876Z       "stages": {
2026-06-04T13:05:22.6035934Z         "doc": {
2026-06-04T13:05:22.6037028Z           "complete": false,
2026-06-04T13:05:22.6038311Z           "evidence": []
2026-06-04T13:05:22.6039594Z         },
2026-06-04T13:05:22.6040588Z         "impl": {
2026-06-04T13:05:22.6041701Z           "complete": false,
2026-06-04T13:05:22.6042997Z           "evidence": []
2026-06-04T13:05:22.6044167Z         },
2026-06-04T13:05:22.6045152Z         "int": {
2026-06-04T13:05:22.6046252Z           "complete": false,
2026-06-04T13:05:22.6047525Z           "evidence": []
2026-06-04T13:05:22.6048687Z         },
2026-06-04T13:05:22.6049716Z         "unit": {
2026-06-04T13:05:22.6050827Z           "complete": false,
2026-06-04T13:05:22.6052107Z           "evidence": []
2026-06-04T13:05:22.6053285Z         }
2026-06-04T13:05:22.6054282Z       }
2026-06-04T13:05:22.6055221Z     },
2026-06-04T13:05:22.6056176Z     {
2026-06-04T13:05:22.6057164Z       "id": "REQ-DOCS-5",
2026-06-04T13:05:22.6059107Z       "title": "Anti-drift: rustdoc/schema/exports/CLI-help generated + CI-checked",
2026-06-04T13:05:22.6061406Z       "requiredStages": [],
2026-06-04T13:05:22.6062658Z       "stages": {
2026-06-04T13:05:22.6063723Z         "doc": {
2026-06-04T13:05:22.6064814Z           "complete": false,
2026-06-04T13:05:22.6066095Z           "evidence": []
2026-06-04T13:05:22.6067267Z         },
2026-06-04T13:05:22.6068262Z         "impl": {
2026-06-04T13:05:22.6069414Z           "complete": false,
2026-06-04T13:05:22.6070688Z           "evidence": []
2026-06-04T13:05:22.6071852Z         },
2026-06-04T13:05:22.6072843Z         "int": {
2026-06-04T13:05:22.6073960Z           "complete": false,
2026-06-04T13:05:22.6075234Z           "evidence": []
2026-06-04T13:05:22.6076403Z         },
2026-06-04T13:05:22.6077445Z         "unit": {
2026-06-04T13:05:22.6078841Z           "complete": false,
2026-06-04T13:05:22.6080162Z           "evidence": []
2026-06-04T13:05:22.6081325Z         }
2026-06-04T13:05:22.6086760Z       }
2026-06-04T13:05:22.6087790Z     },
2026-06-04T13:05:22.6088765Z     {
2026-06-04T13:05:22.6089847Z       "id": "REQ-EP-1",
2026-06-04T13:05:22.6091297Z       "title": "Day-one endpoint types; open type system",
2026-06-04T13:05:22.6093025Z       "requiredStages": [
2026-06-04T13:05:22.6094225Z         "impl",
2026-06-04T13:05:22.6095268Z         "unit"
2026-06-04T13:05:22.6096293Z       ],
2026-06-04T13:05:22.6097273Z       "stages": {
2026-06-04T13:05:22.6098336Z         "doc": {
2026-06-04T13:05:22.6099479Z           "complete": false,
2026-06-04T13:05:22.6100771Z           "evidence": []
2026-06-04T13:05:22.6101939Z         },
2026-06-04T13:05:22.6102924Z         "impl": {
2026-06-04T13:05:22.6104043Z           "complete": true,
2026-06-04T13:05:22.6105285Z           "evidence": [
2026-06-04T13:05:22.6106422Z             {
2026-06-04T13:05:22.6107702Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T13:05:22.6109394Z               "line": 77
2026-06-04T13:05:22.6110554Z             },
2026-06-04T13:05:22.6111592Z             {
2026-06-04T13:05:22.6112835Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T13:05:22.6114482Z               "line": 94
2026-06-04T13:05:22.6115632Z             }
2026-06-04T13:05:22.6116641Z           ]
2026-06-04T13:05:22.6117612Z         },
2026-06-04T13:05:22.6118596Z         "int": {
2026-06-04T13:05:22.6119732Z           "complete": false,
2026-06-04T13:05:22.6121005Z           "evidence": []
2026-06-04T13:05:22.6122160Z         },
2026-06-04T13:05:22.6123140Z         "unit": {
2026-06-04T13:05:22.6124234Z           "complete": true,
2026-06-04T13:05:22.6125466Z           "evidence": [
2026-06-04T13:05:22.6126590Z             {
2026-06-04T13:05:22.6127832Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T13:05:22.6129519Z               "line": 161
2026-06-04T13:05:22.6130744Z             },
2026-06-04T13:05:22.6131760Z             {
2026-06-04T13:05:22.6132998Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T13:05:22.6134669Z               "line": 178
2026-06-04T13:05:22.6135828Z             }
2026-06-04T13:05:22.6136822Z           ]
2026-06-04T13:05:22.6137792Z         }
2026-06-04T13:05:22.6138744Z       }
2026-06-04T13:05:22.6139743Z     },
2026-06-04T13:05:22.6140700Z     {
2026-06-04T13:05:22.6141685Z       "id": "REQ-EP-2",
2026-06-04T13:05:22.6143331Z       "title": "Agent endpoints vs Shells distinction in the type model",
2026-06-04T13:05:22.6145338Z       "requiredStages": [
2026-06-04T13:05:22.6146551Z         "impl",
2026-06-04T13:05:22.6147594Z         "unit"
2026-06-04T13:05:22.6148606Z       ],
2026-06-04T13:05:22.6149624Z       "stages": {
2026-06-04T13:05:22.6150679Z         "doc": {
2026-06-04T13:05:22.6151785Z           "complete": false,
2026-06-04T13:05:22.6153063Z           "evidence": []
2026-06-04T13:05:22.6154244Z         },
2026-06-04T13:05:22.6155231Z         "impl": {
2026-06-04T13:05:22.6156321Z           "complete": true,
2026-06-04T13:05:22.6157561Z           "evidence": [
2026-06-04T13:05:22.6158698Z             {
2026-06-04T13:05:22.6159995Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T13:05:22.6161660Z               "line": 114
2026-06-04T13:05:22.6162831Z             },
2026-06-04T13:05:22.6163838Z             {
2026-06-04T13:05:22.6165057Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T13:05:22.6166703Z               "line": 131
2026-06-04T13:05:22.6167867Z             },
2026-06-04T13:05:22.6168873Z             {
2026-06-04T13:05:22.6170172Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T13:05:22.6171804Z               "line": 138
2026-06-04T13:05:22.6172976Z             }
2026-06-04T13:05:22.6173990Z           ]
2026-06-04T13:05:22.6174967Z         },
2026-06-04T13:05:22.6175945Z         "int": {
2026-06-04T13:05:22.6177037Z           "complete": false,
2026-06-04T13:05:22.6178598Z           "evidence": []
2026-06-04T13:05:22.6179816Z         },
2026-06-04T13:05:22.6180815Z         "unit": {
2026-06-04T13:05:22.6182058Z           "complete": true,
2026-06-04T13:05:22.6187418Z           "evidence": [
2026-06-04T13:05:22.6188629Z             {
2026-06-04T13:05:22.6189984Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T13:05:22.6191618Z               "line": 193
2026-06-04T13:05:22.6192788Z             },
2026-06-04T13:05:22.6193805Z             {
2026-06-04T13:05:22.6195043Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T13:05:22.6196695Z               "line": 211
2026-06-04T13:05:22.6197862Z             },
2026-06-04T13:05:22.6198886Z             {
2026-06-04T13:05:22.6200160Z               "path": "crates/spt-proto/src/endpoint.rs",
2026-06-04T13:05:22.6201794Z               "line": 224
2026-06-04T13:05:22.6202953Z             }
2026-06-04T13:05:22.6203956Z           ]
2026-06-04T13:05:22.6204959Z         }
2026-06-04T13:05:22.6205925Z       }
2026-06-04T13:05:22.6206857Z     },
2026-06-04T13:05:22.6207794Z     {
2026-06-04T13:05:22.6208774Z       "id": "REQ-EP-3",
2026-06-04T13:05:22.6210633Z       "title": "Messaging payloads carry typed operation commands + file blobs",
2026-06-04T13:05:22.6211132Z       "requiredStages": [
2026-06-04T13:05:22.6211563Z         "impl",
2026-06-04T13:05:22.6211999Z         "unit"
2026-06-04T13:05:22.6212416Z       ],
2026-06-04T13:05:22.6212858Z       "stages": {
2026-06-04T13:05:22.6213288Z         "doc": {
2026-06-04T13:05:22.6213768Z           "complete": false,
2026-06-04T13:05:22.6214236Z           "evidence": []
2026-06-04T13:05:22.6214652Z         },
2026-06-04T13:05:22.6215082Z         "impl": {
2026-06-04T13:05:22.6215552Z           "complete": true,
2026-06-04T13:05:22.6216009Z           "evidence": [
2026-06-04T13:05:22.6216431Z             {
2026-06-04T13:05:22.6217130Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T13:05:22.6217622Z               "line": 31
2026-06-04T13:05:22.6218083Z             },
2026-06-04T13:05:22.6218531Z             {
2026-06-04T13:05:22.6219242Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T13:05:22.6219723Z               "line": 49
2026-06-04T13:05:22.6220153Z             }
2026-06-04T13:05:22.6220586Z           ]
2026-06-04T13:05:22.6221011Z         },
2026-06-04T13:05:22.6221446Z         "int": {
2026-06-04T13:05:22.6221928Z           "complete": false,
2026-06-04T13:05:22.6222388Z           "evidence": []
2026-06-04T13:05:22.6222816Z         },
2026-06-04T13:05:22.6223250Z         "unit": {
2026-06-04T13:05:22.6223727Z           "complete": true,
2026-06-04T13:05:22.6224184Z           "evidence": [
2026-06-04T13:05:22.6224607Z             {
2026-06-04T13:05:22.6225266Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T13:05:22.6225724Z               "line": 156
2026-06-04T13:05:22.6226150Z             },
2026-06-04T13:05:22.6226572Z             {
2026-06-04T13:05:22.6227241Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T13:05:22.6227703Z               "line": 164
2026-06-04T13:05:22.6228118Z             },
2026-06-04T13:05:22.6228551Z             {
2026-06-04T13:05:22.6229264Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T13:05:22.6229742Z               "line": 177
2026-06-04T13:05:22.6230192Z             },
2026-06-04T13:05:22.6230620Z             {
2026-06-04T13:05:22.6231277Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T13:05:22.6231728Z               "line": 197
2026-06-04T13:05:22.6232161Z             },
2026-06-04T13:05:22.6232585Z             {
2026-06-04T13:05:22.6233243Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T13:05:22.6233697Z               "line": 213
2026-06-04T13:05:22.6234130Z             },
2026-06-04T13:05:22.6234549Z             {
2026-06-04T13:05:22.6235201Z               "path": "crates/spt-proto/src/payload.rs",
2026-06-04T13:05:22.6235664Z               "line": 227
2026-06-04T13:05:22.6236341Z             }
2026-06-04T13:05:22.6236774Z           ]
2026-06-04T13:05:22.6237190Z         }
2026-06-04T13:05:22.6237619Z       }
2026-06-04T13:05:22.6238181Z     },
2026-06-04T13:05:22.6238604Z     {
2026-06-04T13:05:22.6239068Z       "id": "REQ-EP-4",
2026-06-04T13:05:22.6239958Z       "title": "PresenceChannel broker endpoint (seam day-one)",
2026-06-04T13:05:22.6240456Z       "requiredStages": [
2026-06-04T13:05:22.6240889Z         "impl",
2026-06-04T13:05:22.6241321Z         "unit"
2026-06-04T13:05:22.6241749Z       ],
2026-06-04T13:05:22.6242187Z       "stages": {
2026-06-04T13:05:22.6242624Z         "doc": {
2026-06-04T13:05:22.6243099Z           "complete": false,
2026-06-04T13:05:22.6243560Z           "evidence": []
2026-06-04T13:05:22.6243974Z         },
2026-06-04T13:05:22.6244414Z         "impl": {
2026-06-04T13:05:22.6244885Z           "complete": true,
2026-06-04T13:05:22.6245339Z           "evidence": [
2026-06-04T13:05:22.6245766Z             {
2026-06-04T13:05:22.6246414Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T13:05:22.6246877Z               "line": 419
2026-06-04T13:05:22.6247296Z             },
2026-06-04T13:05:22.6247737Z             {
2026-06-04T13:05:22.6248371Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T13:05:22.6248821Z               "line": 631
2026-06-04T13:05:22.6249280Z             },
2026-06-04T13:05:22.6249698Z             {
2026-06-04T13:05:22.6250347Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T13:05:22.6250798Z               "line": 696
2026-06-04T13:05:22.6251234Z             },
2026-06-04T13:05:22.6251657Z             {
2026-06-04T13:05:22.6252260Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T13:05:22.6252722Z               "line": 83
2026-06-04T13:05:22.6253150Z             },
2026-06-04T13:05:22.6253578Z             {
2026-06-04T13:05:22.6254179Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T13:05:22.6254643Z               "line": 407
2026-06-04T13:05:22.6255092Z             },
2026-06-04T13:05:22.6255512Z             {
2026-06-04T13:05:22.6256116Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T13:05:22.6256578Z               "line": 478
2026-06-04T13:05:22.6257009Z             },
2026-06-04T13:05:22.6257433Z             {
2026-06-04T13:05:22.6258085Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.6258539Z               "line": 181
2026-06-04T13:05:22.6258960Z             },
2026-06-04T13:05:22.6259429Z             {
2026-06-04T13:05:22.6260091Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.6260557Z               "line": 306
2026-06-04T13:05:22.6260987Z             },
2026-06-04T13:05:22.6261404Z             {
2026-06-04T13:05:22.6262059Z               "path": "crates/spt-daemon/src/nethost.rs",
2026-06-04T13:05:22.6262517Z               "line": 613
2026-06-04T13:05:22.6262949Z             }
2026-06-04T13:05:22.6263365Z           ]
2026-06-04T13:05:22.6263805Z         },
2026-06-04T13:05:22.6264248Z         "int": {
2026-06-04T13:05:22.6264723Z           "complete": false,
2026-06-04T13:05:22.6265188Z           "evidence": []
2026-06-04T13:05:22.6265620Z         },
2026-06-04T13:05:22.6266054Z         "unit": {
2026-06-04T13:05:22.6266528Z           "complete": true,
2026-06-04T13:05:22.6266986Z           "evidence": [
2026-06-04T13:05:22.6267408Z             {
2026-06-04T13:05:22.6268015Z               "path": "crates/spt-daemon/src/msg.rs",
2026-06-04T13:05:22.6268480Z               "line": 551
2026-06-04T13:05:22.6268903Z             },
2026-06-04T13:05:22.6269362Z             {
2026-06-04T13:05:22.6270052Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-04T13:05:22.6274617Z               "line": 75
2026-06-04T13:05:22.6275079Z             },
2026-06-04T13:05:22.6275503Z             {
2026-06-04T13:05:22.6276222Z               "path": "crates/spt-daemon/tests/presence.rs",
2026-06-04T13:05:22.6276678Z               "line": 131
2026-06-04T13:05:22.6277414Z             }
2026-06-04T13:05:22.6277832Z           ]
2026-06-04T13:05:22.6278264Z         }
2026-06-04T13:05:22.6278686Z       }
2026-06-04T13:05:22.6279329Z     },
2026-06-04T13:05:22.6279757Z     {
2026-06-04T13:05:22.6280217Z       "id": "REQ-EP-5",
2026-06-04T13:05:22.6284728Z       "title": "Concrete shell instantiation model: spawn-mints-instance (vs relink/online), registered-on-node permission + broadcast-is-discovery, per-shell require_approval gate, max_instances_per_owner + over_cap, instance aliasing, discovery scope",
2026-06-04T13:05:22.6285237Z       "requiredStages": [],
2026-06-04T13:05:22.6285674Z       "stages": {
2026-06-04T13:05:22.6286114Z         "doc": {
2026-06-04T13:05:22.6286595Z           "complete": false,
2026-06-04T13:05:22.6287066Z           "evidence": []
2026-06-04T13:05:22.6287491Z         },
2026-06-04T13:05:22.6287930Z         "impl": {
2026-06-04T13:05:22.6288412Z           "complete": false,
2026-06-04T13:05:22.6288866Z           "evidence": []
2026-06-04T13:05:22.6289351Z         },
2026-06-04T13:05:22.6289779Z         "int": {
2026-06-04T13:05:22.6290264Z           "complete": false,
2026-06-04T13:05:22.6290739Z           "evidence": []
2026-06-04T13:05:22.6291174Z         },
2026-06-04T13:05:22.6291603Z         "unit": {
2026-06-04T13:05:22.6292093Z           "complete": false,
2026-06-04T13:05:22.6292559Z           "evidence": []
2026-06-04T13:05:22.6292982Z         }
2026-06-04T13:05:22.6293412Z       }
2026-06-04T13:05:22.6293830Z     },
2026-06-04T13:05:22.6294254Z     {
2026-06-04T13:05:22.6294726Z       "id": "REQ-FRONT-1",
2026-06-04T13:05:22.6295747Z       "title": "Day-one launcher/manager frontend (list/launch/attach/init)",
2026-06-04T13:05:22.6296242Z       "requiredStages": [],
2026-06-04T13:05:22.6296676Z       "stages": {
2026-06-04T13:05:22.6297106Z         "doc": {
2026-06-04T13:05:22.6297580Z           "complete": false,
2026-06-04T13:05:22.6298040Z           "evidence": []
2026-06-04T13:05:22.6298452Z         },
2026-06-04T13:05:22.6298908Z         "impl": {
2026-06-04T13:05:22.6299428Z           "complete": false,
2026-06-04T13:05:22.6299892Z           "evidence": []
2026-06-04T13:05:22.6300344Z         },
2026-06-04T13:05:22.6300773Z         "int": {
2026-06-04T13:05:22.6301254Z           "complete": false,
2026-06-04T13:05:22.6301708Z           "evidence": []
2026-06-04T13:05:22.6302137Z         },
2026-06-04T13:05:22.6302573Z         "unit": {
2026-06-04T13:05:22.6303046Z           "complete": false,
2026-06-04T13:05:22.6303508Z           "evidence": []
2026-06-04T13:05:22.6303927Z         }
2026-06-04T13:05:22.6304353Z       }
2026-06-04T13:05:22.6304773Z     },
2026-06-04T13:05:22.6305194Z     {
2026-06-04T13:05:22.6305811Z       "id": "REQ-HAZARD-CASCADE-WIPE-GUARD",
2026-06-04T13:05:22.6306796Z       "title": "No hard-delete of a parent hosting non-empty children (6.3)",
2026-06-04T13:05:22.6307290Z       "requiredStages": [
2026-06-04T13:05:22.6307719Z         "impl",
2026-06-04T13:05:22.6308149Z         "unit"
2026-06-04T13:05:22.6308580Z       ],
2026-06-04T13:05:22.6309025Z       "stages": {
2026-06-04T13:05:22.6309502Z         "doc": {
2026-06-04T13:05:22.6309978Z           "complete": false,
2026-06-04T13:05:22.6310456Z           "evidence": []
2026-06-04T13:05:22.6310874Z         },
2026-06-04T13:05:22.6311313Z         "impl": {
2026-06-04T13:05:22.6311785Z           "complete": true,
2026-06-04T13:05:22.6312247Z           "evidence": [
2026-06-04T13:05:22.6312674Z             {
2026-06-04T13:05:22.6313318Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.6313776Z               "line": 119
2026-06-04T13:05:22.6314196Z             },
2026-06-04T13:05:22.6314622Z             {
2026-06-04T13:05:22.6315226Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T13:05:22.6315688Z               "line": 18
2026-06-04T13:05:22.6316117Z             },
2026-06-04T13:05:22.6316540Z             {
2026-06-04T13:05:22.6317149Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T13:05:22.6317782Z               "line": 94
2026-06-04T13:05:22.6318216Z             }
2026-06-04T13:05:22.6318634Z           ]
2026-06-04T13:05:22.6319068Z         },
2026-06-04T13:05:22.6319689Z         "int": {
2026-06-04T13:05:22.6320172Z           "complete": false,
2026-06-04T13:05:22.6320637Z           "evidence": []
2026-06-04T13:05:22.6321060Z         },
2026-06-04T13:05:22.6321498Z         "unit": {
2026-06-04T13:05:22.6321973Z           "complete": true,
2026-06-04T13:05:22.6322430Z           "evidence": [
2026-06-04T13:05:22.6322856Z             {
2026-06-04T13:05:22.6323513Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.6323974Z               "line": 363
2026-06-04T13:05:22.6324406Z             },
2026-06-04T13:05:22.6324839Z             {
2026-06-04T13:05:22.6325439Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T13:05:22.6325905Z               "line": 152
2026-06-04T13:05:22.6326342Z             },
2026-06-04T13:05:22.6326768Z             {
2026-06-04T13:05:22.6327396Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T13:05:22.6327848Z               "line": 188
2026-06-04T13:05:22.6328279Z             }
2026-06-04T13:05:22.6328724Z           ]
2026-06-04T13:05:22.6329142Z         }
2026-06-04T13:05:22.6329613Z       }
2026-06-04T13:05:22.6330027Z     },
2026-06-04T13:05:22.6330442Z     {
2026-06-04T13:05:22.6331093Z       "id": "REQ-HAZARD-CONFLICT-BOTH-PRESERVED",
2026-06-04T13:05:22.6334859Z       "title": "A surfaced concurrent context pair is durably preserved (both versions, tracked artifacts) until a strictly dominating write clears it; no reconcile failure path discards an unmerged version (6.6, ADR-0013)",
2026-06-04T13:05:22.6335365Z       "requiredStages": [
2026-06-04T13:05:22.6335801Z         "impl",
2026-06-04T13:05:22.6336234Z         "unit"
2026-06-04T13:05:22.6336650Z       ],
2026-06-04T13:05:22.6337094Z       "stages": {
2026-06-04T13:05:22.6337517Z         "doc": {
2026-06-04T13:05:22.6337999Z           "complete": false,
2026-06-04T13:05:22.6338480Z           "evidence": []
2026-06-04T13:05:22.6338893Z         },
2026-06-04T13:05:22.6339360Z         "impl": {
2026-06-04T13:05:22.6339846Z           "complete": true,
2026-06-04T13:05:22.6340304Z           "evidence": [
2026-06-04T13:05:22.6340719Z             {
2026-06-04T13:05:22.6341407Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T13:05:22.6341870Z               "line": 22
2026-06-04T13:05:22.6342299Z             },
2026-06-04T13:05:22.6342726Z             {
2026-06-04T13:05:22.6343334Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.6343798Z               "line": 417
2026-06-04T13:05:22.6344219Z             },
2026-06-04T13:05:22.6344647Z             {
2026-06-04T13:05:22.6345304Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T13:05:22.6345750Z               "line": 17
2026-06-04T13:05:22.6346181Z             },
2026-06-04T13:05:22.6346594Z             {
2026-06-04T13:05:22.6347250Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T13:05:22.6347716Z               "line": 125
2026-06-04T13:05:22.6348156Z             },
2026-06-04T13:05:22.6348601Z             {
2026-06-04T13:05:22.6349343Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:22.6349810Z               "line": 169
2026-06-04T13:05:22.6350234Z             },
2026-06-04T13:05:22.6350670Z             {
2026-06-04T13:05:22.6351365Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:22.6351836Z               "line": 197
2026-06-04T13:05:22.6352266Z             },
2026-06-04T13:05:22.6352692Z             {
2026-06-04T13:05:22.6353397Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:22.6353854Z               "line": 223
2026-06-04T13:05:22.6354289Z             },
2026-06-04T13:05:22.6354717Z             {
2026-06-04T13:05:22.6355373Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T13:05:22.6355837Z               "line": 122
2026-06-04T13:05:22.6356442Z             },
2026-06-04T13:05:22.6356866Z             {
2026-06-04T13:05:22.6357528Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T13:05:22.6358128Z               "line": 222
2026-06-04T13:05:22.6358557Z             }
2026-06-04T13:05:22.6358971Z           ]
2026-06-04T13:05:22.6359439Z         },
2026-06-04T13:05:22.6359866Z         "int": {
2026-06-04T13:05:22.6363883Z           "complete": false,
2026-06-04T13:05:22.6364433Z           "evidence": []
2026-06-04T13:05:22.6364864Z         },
2026-06-04T13:05:22.6365307Z         "unit": {
2026-06-04T13:05:22.6365778Z           "complete": true,
2026-06-04T13:05:22.6366241Z           "evidence": [
2026-06-04T13:05:22.6366656Z             {
2026-06-04T13:05:22.6367344Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T13:05:22.6367799Z               "line": 53
2026-06-04T13:05:22.6368226Z             },
2026-06-04T13:05:22.6368654Z             {
2026-06-04T13:05:22.6369397Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T13:05:22.6369898Z               "line": 60
2026-06-04T13:05:22.6370323Z             },
2026-06-04T13:05:22.6370760Z             {
2026-06-04T13:05:22.6371423Z               "path": "crates/spt-daemon/src/reconcile.rs",
2026-06-04T13:05:22.6371880Z               "line": 72
2026-06-04T13:05:22.6372309Z             },
2026-06-04T13:05:22.6372726Z             {
2026-06-04T13:05:22.6373384Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T13:05:22.6373838Z               "line": 298
2026-06-04T13:05:22.6374268Z             },
2026-06-04T13:05:22.6374682Z             {
2026-06-04T13:05:22.6375332Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T13:05:22.6375793Z               "line": 247
2026-06-04T13:05:22.6376215Z             },
2026-06-04T13:05:22.6376644Z             {
2026-06-04T13:05:22.6377295Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T13:05:22.6377753Z               "line": 282
2026-06-04T13:05:22.6378189Z             },
2026-06-04T13:05:22.6378619Z             {
2026-06-04T13:05:22.6379316Z               "path": "crates/spt-live/src/reconcile.rs",
2026-06-04T13:05:22.6379790Z               "line": 313
2026-06-04T13:05:22.6380218Z             },
2026-06-04T13:05:22.6380629Z             {
2026-06-04T13:05:22.6381330Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:22.6381777Z               "line": 400
2026-06-04T13:05:22.6382205Z             },
2026-06-04T13:05:22.6382630Z             {
2026-06-04T13:05:22.6383280Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T13:05:22.6383737Z               "line": 383
2026-06-04T13:05:22.6384159Z             },
2026-06-04T13:05:22.6384581Z             {
2026-06-04T13:05:22.6385241Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T13:05:22.6385702Z               "line": 420
2026-06-04T13:05:22.6386129Z             }
2026-06-04T13:05:22.6386544Z           ]
2026-06-04T13:05:22.6386976Z         }
2026-06-04T13:05:22.6387388Z       }
2026-06-04T13:05:22.6387804Z     },
2026-06-04T13:05:22.6388210Z     {
2026-06-04T13:05:22.6388747Z       "id": "REQ-HAZARD-CONPTY-DSR",
2026-06-04T13:05:22.6390079Z       "title": "ConPTY reader must auto-answer DSR (ESC[6n) or all child output stalls (5.5)",
2026-06-04T13:05:22.6390572Z       "requiredStages": [
2026-06-04T13:05:22.6391006Z         "impl",
2026-06-04T13:05:22.6391426Z         "unit"
2026-06-04T13:05:22.6391848Z       ],
2026-06-04T13:05:22.6392276Z       "stages": {
2026-06-04T13:05:22.6392706Z         "doc": {
2026-06-04T13:05:22.6393182Z           "complete": false,
2026-06-04T13:05:22.6393639Z           "evidence": []
2026-06-04T13:05:22.6394062Z         },
2026-06-04T13:05:22.6394490Z         "impl": {
2026-06-04T13:05:22.6394962Z           "complete": true,
2026-06-04T13:05:22.6395404Z           "evidence": [
2026-06-04T13:05:22.6395829Z             {
2026-06-04T13:05:22.6396443Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T13:05:22.6397143Z               "line": 164
2026-06-04T13:05:22.6397572Z             }
2026-06-04T13:05:22.6397987Z           ]
2026-06-04T13:05:22.6398590Z         },
2026-06-04T13:05:22.6399018Z         "int": {
2026-06-04T13:05:22.6399541Z           "complete": true,
2026-06-04T13:05:22.6399992Z           "evidence": [
2026-06-04T13:05:22.6400402Z             {
2026-06-04T13:05:22.6401002Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-04T13:05:22.6401443Z               "line": 44
2026-06-04T13:05:22.6401869Z             },
2026-06-04T13:05:22.6402279Z             {
2026-06-04T13:05:22.6402883Z               "path": "crates/spt-term/tests/dsr.rs",
2026-06-04T13:05:22.6403329Z               "line": 66
2026-06-04T13:05:22.6403751Z             }
2026-06-04T13:05:22.6404172Z           ]
2026-06-04T13:05:22.6404579Z         },
2026-06-04T13:05:22.6405008Z         "unit": {
2026-06-04T13:05:22.6405470Z           "complete": true,
2026-06-04T13:05:22.6405924Z           "evidence": [
2026-06-04T13:05:22.6406365Z             {
2026-06-04T13:05:22.6406976Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T13:05:22.6407430Z               "line": 181
2026-06-04T13:05:22.6407860Z             },
2026-06-04T13:05:22.6408286Z             {
2026-06-04T13:05:22.6408894Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T13:05:22.6409387Z               "line": 233
2026-06-04T13:05:22.6409818Z             },
2026-06-04T13:05:22.6410235Z             {
2026-06-04T13:05:22.6410842Z               "path": "crates/spt-term/src/reader.rs",
2026-06-04T13:05:22.6411293Z               "line": 261
2026-06-04T13:05:22.6411713Z             }
2026-06-04T13:05:22.6412134Z           ]
2026-06-04T13:05:22.6412557Z         }
2026-06-04T13:05:22.6412978Z       }
2026-06-04T13:05:22.6413381Z     },
2026-06-04T13:05:22.6413792Z     {
2026-06-04T13:05:22.6414425Z       "id": "REQ-HAZARD-DAEMON-HOSTED-LIVENESS",
2026-06-04T13:05:22.6417190Z       "title": "Daemon-hosted perches (Psyche, spt-hosted Self) derive liveness from the daemon endpoint table + info.json status, never is_process_alive(info.pid) (2.5)",
2026-06-04T13:05:22.6417700Z       "requiredStages": [
2026-06-04T13:05:22.6418143Z         "impl",
2026-06-04T13:05:22.6418573Z         "unit",
2026-06-04T13:05:22.6418986Z         "int"
2026-06-04T13:05:22.6419451Z       ],
2026-06-04T13:05:22.6419887Z       "stages": {
2026-06-04T13:05:22.6420322Z         "doc": {
2026-06-04T13:05:22.6420803Z           "complete": false,
2026-06-04T13:05:22.6421253Z           "evidence": []
2026-06-04T13:05:22.6421675Z         },
2026-06-04T13:05:22.6422102Z         "impl": {
2026-06-04T13:05:22.6422575Z           "complete": true,
2026-06-04T13:05:22.6423015Z           "evidence": [
2026-06-04T13:05:22.6423429Z             {
2026-06-04T13:05:22.6424107Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.6424748Z               "line": 150
2026-06-04T13:05:22.6425569Z             },
2026-06-04T13:05:22.6426069Z             {
2026-06-04T13:05:22.6426961Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.6427419Z               "line": 169
2026-06-04T13:05:22.6427863Z             },
2026-06-04T13:05:22.6428287Z             {
2026-06-04T13:05:22.6428890Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.6429419Z               "line": 79
2026-06-04T13:05:22.6429853Z             },
2026-06-04T13:05:22.6430278Z             {
2026-06-04T13:05:22.6430853Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T13:05:22.6431305Z               "line": 51
2026-06-04T13:05:22.6431730Z             },
2026-06-04T13:05:22.6432143Z             {
2026-06-04T13:05:22.6432741Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.6433195Z               "line": 126
2026-06-04T13:05:22.6433626Z             },
2026-06-04T13:05:22.6434041Z             {
2026-06-04T13:05:22.6434702Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T13:05:22.6435156Z               "line": 27
2026-06-04T13:05:22.6435795Z             },
2026-06-04T13:05:22.6436214Z             {
2026-06-04T13:05:22.6436853Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T13:05:22.6437449Z               "line": 79
2026-06-04T13:05:22.6437870Z             },
2026-06-04T13:05:22.6438296Z             {
2026-06-04T13:05:22.6438945Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T13:05:22.6439447Z               "line": 102
2026-06-04T13:05:22.6439882Z             },
2026-06-04T13:05:22.6440305Z             {
2026-06-04T13:05:22.6440957Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.6441416Z               "line": 108
2026-06-04T13:05:22.6441833Z             }
2026-06-04T13:05:22.6442253Z           ]
2026-06-04T13:05:22.6442666Z         },
2026-06-04T13:05:22.6443090Z         "int": {
2026-06-04T13:05:22.6443549Z           "complete": true,
2026-06-04T13:05:22.6443999Z           "evidence": [
2026-06-04T13:05:22.6444421Z             {
2026-06-04T13:05:22.6445132Z               "path": "crates/spt-daemon/tests/daemon_e2e.rs",
2026-06-04T13:05:22.6449343Z               "line": 35
2026-06-04T13:05:22.6449901Z             }
2026-06-04T13:05:22.6450329Z           ]
2026-06-04T13:05:22.6450738Z         },
2026-06-04T13:05:22.6451184Z         "unit": {
2026-06-04T13:05:22.6451654Z           "complete": true,
2026-06-04T13:05:22.6452120Z           "evidence": [
2026-06-04T13:05:22.6452548Z             {
2026-06-04T13:05:22.6453228Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.6453687Z               "line": 544
2026-06-04T13:05:22.6454110Z             },
2026-06-04T13:05:22.6454538Z             {
2026-06-04T13:05:22.6455156Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.6455612Z               "line": 286
2026-06-04T13:05:22.6456045Z             },
2026-06-04T13:05:22.6456458Z             {
2026-06-04T13:05:22.6457109Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T13:05:22.6457579Z               "line": 124
2026-06-04T13:05:22.6458004Z             },
2026-06-04T13:05:22.6458429Z             {
2026-06-04T13:05:22.6459073Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T13:05:22.6459583Z               "line": 136
2026-06-04T13:05:22.6460009Z             },
2026-06-04T13:05:22.6460431Z             {
2026-06-04T13:05:22.6461085Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T13:05:22.6461547Z               "line": 146
2026-06-04T13:05:22.6461977Z             },
2026-06-04T13:05:22.6462393Z             {
2026-06-04T13:05:22.6463039Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T13:05:22.6463487Z               "line": 159
2026-06-04T13:05:22.6463915Z             },
2026-06-04T13:05:22.6464326Z             {
2026-06-04T13:05:22.6464975Z               "path": "crates/spt-store/src/liveness.rs",
2026-06-04T13:05:22.6465435Z               "line": 171
2026-06-04T13:05:22.6465851Z             },
2026-06-04T13:05:22.6466290Z             {
2026-06-04T13:05:22.6466928Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.6467388Z               "line": 207
2026-06-04T13:05:22.6467818Z             }
2026-06-04T13:05:22.6468241Z           ]
2026-06-04T13:05:22.6468658Z         }
2026-06-04T13:05:22.6469065Z       }
2026-06-04T13:05:22.6469515Z     },
2026-06-04T13:05:22.6469918Z     {
2026-06-04T13:05:22.6470572Z       "id": "REQ-HAZARD-DAEMON-SCHED-NONBLOCKING",
2026-06-04T13:05:22.6474939Z       "title": "Per-agent pulse/psyche/echo-commune scheduling must not serialize across agents: each agent's bounded LLM call (echo-commune summarizer, Psyche turn) runs off the shared scheduler so one slow/hung call cannot stall another agent's tick (7.4)",
2026-06-04T13:05:22.6475447Z       "requiredStages": [],
2026-06-04T13:05:22.6475883Z       "stages": {
2026-06-04T13:05:22.6476302Z         "doc": {
2026-06-04T13:05:22.6476783Z           "complete": false,
2026-06-04T13:05:22.6477234Z           "evidence": []
2026-06-04T13:05:22.6477913Z         },
2026-06-04T13:05:22.6478349Z         "impl": {
2026-06-04T13:05:22.6478816Z           "complete": false,
2026-06-04T13:05:22.6479469Z           "evidence": []
2026-06-04T13:05:22.6479887Z         },
2026-06-04T13:05:22.6480316Z         "int": {
2026-06-04T13:05:22.6480783Z           "complete": false,
2026-06-04T13:05:22.6481242Z           "evidence": []
2026-06-04T13:05:22.6481661Z         },
2026-06-04T13:05:22.6482080Z         "unit": {
2026-06-04T13:05:22.6482556Z           "complete": false,
2026-06-04T13:05:22.6483006Z           "evidence": []
2026-06-04T13:05:22.6483437Z         }
2026-06-04T13:05:22.6483844Z       }
2026-06-04T13:05:22.6484259Z     },
2026-06-04T13:05:22.6484675Z     {
2026-06-04T13:05:22.6485220Z       "id": "REQ-HAZARD-DEFERRED-DRAIN",
2026-06-04T13:05:22.6486289Z       "title": "Deferred spool rows excluded from the event-stream drain (1.4)",
2026-06-04T13:05:22.6486767Z       "requiredStages": [
2026-06-04T13:05:22.6487195Z         "impl",
2026-06-04T13:05:22.6487630Z         "unit"
2026-06-04T13:05:22.6488042Z       ],
2026-06-04T13:05:22.6488474Z       "stages": {
2026-06-04T13:05:22.6488888Z         "doc": {
2026-06-04T13:05:22.6489420Z           "complete": false,
2026-06-04T13:05:22.6489871Z           "evidence": []
2026-06-04T13:05:22.6490286Z         },
2026-06-04T13:05:22.6490706Z         "impl": {
2026-06-04T13:05:22.6491175Z           "complete": true,
2026-06-04T13:05:22.6491623Z           "evidence": [
2026-06-04T13:05:22.6492042Z             {
2026-06-04T13:05:22.6492661Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6493102Z               "line": 40
2026-06-04T13:05:22.6493525Z             },
2026-06-04T13:05:22.6493937Z             {
2026-06-04T13:05:22.6494551Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6495003Z               "line": 98
2026-06-04T13:05:22.6495419Z             },
2026-06-04T13:05:22.6495843Z             {
2026-06-04T13:05:22.6496448Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6496928Z               "line": 209
2026-06-04T13:05:22.6497344Z             },
2026-06-04T13:05:22.6497785Z             {
2026-06-04T13:05:22.6498408Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6498856Z               "line": 291
2026-06-04T13:05:22.6499318Z             }
2026-06-04T13:05:22.6499736Z           ]
2026-06-04T13:05:22.6500156Z         },
2026-06-04T13:05:22.6500576Z         "int": {
2026-06-04T13:05:22.6501062Z           "complete": false,
2026-06-04T13:05:22.6501526Z           "evidence": []
2026-06-04T13:05:22.6501940Z         },
2026-06-04T13:05:22.6502369Z         "unit": {
2026-06-04T13:05:22.6502832Z           "complete": true,
2026-06-04T13:05:22.6503284Z           "evidence": [
2026-06-04T13:05:22.6503696Z             {
2026-06-04T13:05:22.6504303Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6504758Z               "line": 326
2026-06-04T13:05:22.6505179Z             },
2026-06-04T13:05:22.6505625Z             {
2026-06-04T13:05:22.6506227Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6506687Z               "line": 372
2026-06-04T13:05:22.6507112Z             },
2026-06-04T13:05:22.6507533Z             {
2026-06-04T13:05:22.6508148Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6508592Z               "line": 413
2026-06-04T13:05:22.6509012Z             },
2026-06-04T13:05:22.6509458Z             {
2026-06-04T13:05:22.6510067Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6510517Z               "line": 432
2026-06-04T13:05:22.6510940Z             }
2026-06-04T13:05:22.6511360Z           ]
2026-06-04T13:05:22.6511765Z         }
2026-06-04T13:05:22.6512180Z       }
2026-06-04T13:05:22.6512586Z     },
2026-06-04T13:05:22.6513003Z     {
2026-06-04T13:05:22.6513627Z       "id": "REQ-HAZARD-DEFERRED-SURVIVE-DRAIN",
2026-06-04T13:05:22.6514306Z       "title": "Deferred rows survive poll drain (4.4)",
2026-06-04T13:05:22.6514985Z       "requiredStages": [
2026-06-04T13:05:22.6515415Z         "impl",
2026-06-04T13:05:22.6515840Z         "unit"
2026-06-04T13:05:22.6516395Z       ],
2026-06-04T13:05:22.6516834Z       "stages": {
2026-06-04T13:05:22.6517255Z         "doc": {
2026-06-04T13:05:22.6517731Z           "complete": false,
2026-06-04T13:05:22.6518191Z           "evidence": []
2026-06-04T13:05:22.6518604Z         },
2026-06-04T13:05:22.6519041Z         "impl": {
2026-06-04T13:05:22.6519562Z           "complete": true,
2026-06-04T13:05:22.6520028Z           "evidence": [
2026-06-04T13:05:22.6520446Z             {
2026-06-04T13:05:22.6521066Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6521523Z               "line": 111
2026-06-04T13:05:22.6521940Z             },
2026-06-04T13:05:22.6522366Z             {
2026-06-04T13:05:22.6522966Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6523424Z               "line": 202
2026-06-04T13:05:22.6523865Z             }
2026-06-04T13:05:22.6524294Z           ]
2026-06-04T13:05:22.6524717Z         },
2026-06-04T13:05:22.6525148Z         "int": {
2026-06-04T13:05:22.6525640Z           "complete": false,
2026-06-04T13:05:22.6526096Z           "evidence": []
2026-06-04T13:05:22.6526518Z         },
2026-06-04T13:05:22.6526941Z         "unit": {
2026-06-04T13:05:22.6527410Z           "complete": true,
2026-06-04T13:05:22.6527865Z           "evidence": [
2026-06-04T13:05:22.6528276Z             {
2026-06-04T13:05:22.6528891Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6529385Z               "line": 347
2026-06-04T13:05:22.6529813Z             },
2026-06-04T13:05:22.6533723Z             {
2026-06-04T13:05:22.6534460Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.6534927Z               "line": 391
2026-06-04T13:05:22.6535344Z             }
2026-06-04T13:05:22.6535762Z           ]
2026-06-04T13:05:22.6536176Z         }
2026-06-04T13:05:22.6536594Z       }
2026-06-04T13:05:22.6537035Z     },
2026-06-04T13:05:22.6537450Z     {
2026-06-04T13:05:22.6538099Z       "id": "REQ-HAZARD-DIRECT-WRITE-PRECEDENCE",
2026-06-04T13:05:22.6539474Z       "title": "Direct-write precedence marker (with node id) guards stale overwrite (6.5)",
2026-06-04T13:05:22.6539969Z       "requiredStages": [
2026-06-04T13:05:22.6540394Z         "impl",
2026-06-04T13:05:22.6540824Z         "unit"
2026-06-04T13:05:22.6541236Z       ],
2026-06-04T13:05:22.6541677Z       "stages": {
2026-06-04T13:05:22.6542110Z         "doc": {
2026-06-04T13:05:22.6542582Z           "complete": false,
2026-06-04T13:05:22.6543043Z           "evidence": []
2026-06-04T13:05:22.6543452Z         },
2026-06-04T13:05:22.6543888Z         "impl": {
2026-06-04T13:05:22.6544350Z           "complete": true,
2026-06-04T13:05:22.6544801Z           "evidence": [
2026-06-04T13:05:22.6545226Z             {
2026-06-04T13:05:22.6545849Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T13:05:22.6546298Z               "line": 26
2026-06-04T13:05:22.6546736Z             },
2026-06-04T13:05:22.6547162Z             {
2026-06-04T13:05:22.6547778Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T13:05:22.6548257Z               "line": 126
2026-06-04T13:05:22.6548691Z             },
2026-06-04T13:05:22.6549116Z             {
2026-06-04T13:05:22.6549853Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T13:05:22.6550293Z               "line": 26
2026-06-04T13:05:22.6550716Z             },
2026-06-04T13:05:22.6551127Z             {
2026-06-04T13:05:22.6551815Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T13:05:22.6552271Z               "line": 233
2026-06-04T13:05:22.6552681Z             }
2026-06-04T13:05:22.6553100Z           ]
2026-06-04T13:05:22.6553511Z         },
2026-06-04T13:05:22.6553938Z         "int": {
2026-06-04T13:05:22.6554407Z           "complete": false,
2026-06-04T13:05:22.6554872Z           "evidence": []
2026-06-04T13:05:22.6555291Z         },
2026-06-04T13:05:22.6555960Z         "unit": {
2026-06-04T13:05:22.6556443Z           "complete": true,
2026-06-04T13:05:22.6556890Z           "evidence": [
2026-06-04T13:05:22.6557482Z             {
2026-06-04T13:05:22.6558106Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T13:05:22.6558568Z               "line": 152
2026-06-04T13:05:22.6558990Z             },
2026-06-04T13:05:22.6559467Z             {
2026-06-04T13:05:22.6560136Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T13:05:22.6560608Z               "line": 161
2026-06-04T13:05:22.6561041Z             },
2026-06-04T13:05:22.6561458Z             {
2026-06-04T13:05:22.6562077Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T13:05:22.6562531Z               "line": 170
2026-06-04T13:05:22.6562946Z             },
2026-06-04T13:05:22.6563367Z             {
2026-06-04T13:05:22.6563982Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T13:05:22.6564433Z               "line": 179
2026-06-04T13:05:22.6564878Z             },
2026-06-04T13:05:22.6565288Z             {
2026-06-04T13:05:22.6565911Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T13:05:22.6566370Z               "line": 188
2026-06-04T13:05:22.6566794Z             },
2026-06-04T13:05:22.6567210Z             {
2026-06-04T13:05:22.6567835Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T13:05:22.6568289Z               "line": 199
2026-06-04T13:05:22.6568709Z             },
2026-06-04T13:05:22.6569128Z             {
2026-06-04T13:05:22.6569800Z               "path": "crates/spt-live/src/context.rs",
2026-06-04T13:05:22.6570289Z               "line": 225
2026-06-04T13:05:22.6570704Z             },
2026-06-04T13:05:22.6571124Z             {
2026-06-04T13:05:22.6571737Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T13:05:22.6572184Z               "line": 245
2026-06-04T13:05:22.6572605Z             },
2026-06-04T13:05:22.6573023Z             {
2026-06-04T13:05:22.6573646Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T13:05:22.6574114Z               "line": 212
2026-06-04T13:05:22.6574543Z             },
2026-06-04T13:05:22.6574977Z             {
2026-06-04T13:05:22.6575655Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T13:05:22.6576110Z               "line": 256
2026-06-04T13:05:22.6576530Z             },
2026-06-04T13:05:22.6576952Z             {
2026-06-04T13:05:22.6577618Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T13:05:22.6578078Z               "line": 281
2026-06-04T13:05:22.6578502Z             },
2026-06-04T13:05:22.6578916Z             {
2026-06-04T13:05:22.6579669Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T13:05:22.6580129Z               "line": 293
2026-06-04T13:05:22.6580556Z             },
2026-06-04T13:05:22.6580973Z             {
2026-06-04T13:05:22.6581670Z               "path": "crates/spt-store/src/contextmark.rs",
2026-06-04T13:05:22.6582136Z               "line": 303
2026-06-04T13:05:22.6582571Z             },
2026-06-04T13:05:22.6583000Z             {
2026-06-04T13:05:22.6583653Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T13:05:22.6584131Z               "line": 502
2026-06-04T13:05:22.6584554Z             }
2026-06-04T13:05:22.6584982Z           ]
2026-06-04T13:05:22.6585397Z         }
2026-06-04T13:05:22.6585816Z       }
2026-06-04T13:05:22.6586227Z     },
2026-06-04T13:05:22.6586636Z     {
2026-06-04T13:05:22.6587278Z       "id": "REQ-HAZARD-DROP-FILE-SINGLE-WRITER",
2026-06-04T13:05:22.6588087Z       "title": "Drop files are daemon-owned single-writer (6.4)",
2026-06-04T13:05:22.6588580Z       "requiredStages": [
2026-06-04T13:05:22.6589015Z         "impl",
2026-06-04T13:05:22.6589469Z         "unit"
2026-06-04T13:05:22.6589887Z       ],
2026-06-04T13:05:22.6590319Z       "stages": {
2026-06-04T13:05:22.6590750Z         "doc": {
2026-06-04T13:05:22.6591221Z           "complete": false,
2026-06-04T13:05:22.6591679Z           "evidence": []
2026-06-04T13:05:22.6592287Z         },
2026-06-04T13:05:22.6592715Z         "impl": {
2026-06-04T13:05:22.6593192Z           "complete": true,
2026-06-04T13:05:22.6593771Z           "evidence": [
2026-06-04T13:05:22.6594192Z             {
2026-06-04T13:05:22.6594783Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T13:05:22.6595240Z               "line": 25
2026-06-04T13:05:22.6595671Z             },
2026-06-04T13:05:22.6596086Z             {
2026-06-04T13:05:22.6596694Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T13:05:22.6597142Z               "line": 26
2026-06-04T13:05:22.6597567Z             },
2026-06-04T13:05:22.6597980Z             {
2026-06-04T13:05:22.6598593Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T13:05:22.6599049Z               "line": 153
2026-06-04T13:05:22.6599510Z             }
2026-06-04T13:05:22.6599939Z           ]
2026-06-04T13:05:22.6600353Z         },
2026-06-04T13:05:22.6600784Z         "int": {
2026-06-04T13:05:22.6601272Z           "complete": false,
2026-06-04T13:05:22.6601739Z           "evidence": []
2026-06-04T13:05:22.6602167Z         },
2026-06-04T13:05:22.6602609Z         "unit": {
2026-06-04T13:05:22.6603084Z           "complete": true,
2026-06-04T13:05:22.6603529Z           "evidence": [
2026-06-04T13:05:22.6603952Z             {
2026-06-04T13:05:22.6604543Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T13:05:22.6605001Z               "line": 180
2026-06-04T13:05:22.6605426Z             },
2026-06-04T13:05:22.6605840Z             {
2026-06-04T13:05:22.6606434Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T13:05:22.6606883Z               "line": 205
2026-06-04T13:05:22.6607314Z             },
2026-06-04T13:05:22.6607731Z             {
2026-06-04T13:05:22.6608348Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T13:05:22.6608807Z               "line": 180
2026-06-04T13:05:22.6609263Z             }
2026-06-04T13:05:22.6609687Z           ]
2026-06-04T13:05:22.6610112Z         }
2026-06-04T13:05:22.6610525Z       }
2026-06-04T13:05:22.6610931Z     },
2026-06-04T13:05:22.6611345Z     {
2026-06-04T13:05:22.6611886Z       "id": "REQ-HAZARD-EBUSY-RENAME",
2026-06-04T13:05:22.6616375Z       "title": "tmp-write + atomic-rename + retry on Windows EBUSY (5.2)",
2026-06-04T13:05:22.6616981Z       "requiredStages": [
2026-06-04T13:05:22.6617409Z         "impl",
2026-06-04T13:05:22.6617844Z         "unit"
2026-06-04T13:05:22.6618267Z       ],
2026-06-04T13:05:22.6618700Z       "stages": {
2026-06-04T13:05:22.6619129Z         "doc": {
2026-06-04T13:05:22.6619668Z           "complete": false,
2026-06-04T13:05:22.6620134Z           "evidence": []
2026-06-04T13:05:22.6620544Z         },
2026-06-04T13:05:22.6620976Z         "impl": {
2026-06-04T13:05:22.6621441Z           "complete": true,
2026-06-04T13:05:22.6621895Z           "evidence": [
2026-06-04T13:05:22.6622311Z             {
2026-06-04T13:05:22.6622942Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T13:05:22.6623446Z               "line": 48
2026-06-04T13:05:22.6623859Z             },
2026-06-04T13:05:22.6624283Z             {
2026-06-04T13:05:22.6624892Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T13:05:22.6625370Z               "line": 55
2026-06-04T13:05:22.6625793Z             },
2026-06-04T13:05:22.6626200Z             {
2026-06-04T13:05:22.6626818Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T13:05:22.6627259Z               "line": 74
2026-06-04T13:05:22.6627684Z             },
2026-06-04T13:05:22.6628104Z             {
2026-06-04T13:05:22.6628724Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T13:05:22.6629211Z               "line": 91
2026-06-04T13:05:22.6629628Z             }
2026-06-04T13:05:22.6630051Z           ]
2026-06-04T13:05:22.6630472Z         },
2026-06-04T13:05:22.6630901Z         "int": {
2026-06-04T13:05:22.6631371Z           "complete": false,
2026-06-04T13:05:22.6631831Z           "evidence": []
2026-06-04T13:05:22.6632518Z         },
2026-06-04T13:05:22.6632950Z         "unit": {
2026-06-04T13:05:22.6633422Z           "complete": true,
2026-06-04T13:05:22.6633865Z           "evidence": [
2026-06-04T13:05:22.6634421Z             {
2026-06-04T13:05:22.6635041Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T13:05:22.6635508Z               "line": 149
2026-06-04T13:05:22.6635924Z             },
2026-06-04T13:05:22.6636334Z             {
2026-06-04T13:05:22.6636960Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T13:05:22.6637408Z               "line": 163
2026-06-04T13:05:22.6637831Z             },
2026-06-04T13:05:22.6638254Z             {
2026-06-04T13:05:22.6638868Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T13:05:22.6639370Z               "line": 173
2026-06-04T13:05:22.6639803Z             },
2026-06-04T13:05:22.6640256Z             {
2026-06-04T13:05:22.6640873Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T13:05:22.6641327Z               "line": 191
2026-06-04T13:05:22.6641768Z             },
2026-06-04T13:05:22.6642188Z             {
2026-06-04T13:05:22.6642804Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T13:05:22.6643268Z               "line": 204
2026-06-04T13:05:22.6643688Z             }
2026-06-04T13:05:22.6644103Z           ]
2026-06-04T13:05:22.6644521Z         }
2026-06-04T13:05:22.6644936Z       }
2026-06-04T13:05:22.6645340Z     },
2026-06-04T13:05:22.6645749Z     {
2026-06-04T13:05:22.6646334Z       "id": "REQ-HAZARD-ECHO-BEFORE-SIGNOFF",
2026-06-04T13:05:22.6647421Z       "title": "Echo-commune fires before INIT_SIGNOFF on orphan teardown (3.3)",
2026-06-04T13:05:22.6647900Z       "requiredStages": [
2026-06-04T13:05:22.6648330Z         "impl",
2026-06-04T13:05:22.6648759Z         "unit"
2026-06-04T13:05:22.6649212Z       ],
2026-06-04T13:05:22.6649647Z       "stages": {
2026-06-04T13:05:22.6650066Z         "doc": {
2026-06-04T13:05:22.6650546Z           "complete": false,
2026-06-04T13:05:22.6651001Z           "evidence": []
2026-06-04T13:05:22.6651439Z         },
2026-06-04T13:05:22.6651871Z         "impl": {
2026-06-04T13:05:22.6652329Z           "complete": true,
2026-06-04T13:05:22.6652796Z           "evidence": [
2026-06-04T13:05:22.6653206Z             {
2026-06-04T13:05:22.6653880Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.6654332Z               "line": 341
2026-06-04T13:05:22.6654754Z             },
2026-06-04T13:05:22.6655184Z             {
2026-06-04T13:05:22.6655803Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T13:05:22.6656250Z               "line": 26
2026-06-04T13:05:22.6656660Z             }
2026-06-04T13:05:22.6657078Z           ]
2026-06-04T13:05:22.6657488Z         },
2026-06-04T13:05:22.6657915Z         "int": {
2026-06-04T13:05:22.6658390Z           "complete": false,
2026-06-04T13:05:22.6658841Z           "evidence": []
2026-06-04T13:05:22.6659307Z         },
2026-06-04T13:05:22.6659739Z         "unit": {
2026-06-04T13:05:22.6660225Z           "complete": true,
2026-06-04T13:05:22.6660668Z           "evidence": [
2026-06-04T13:05:22.6661093Z             {
2026-06-04T13:05:22.6661717Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T13:05:22.6662175Z               "line": 139
2026-06-04T13:05:22.6662604Z             },
2026-06-04T13:05:22.6663020Z             {
2026-06-04T13:05:22.6663639Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T13:05:22.6664085Z               "line": 182
2026-06-04T13:05:22.6664510Z             }
2026-06-04T13:05:22.6664929Z           ]
2026-06-04T13:05:22.6665341Z         }
2026-06-04T13:05:22.6665758Z       }
2026-06-04T13:05:22.6666170Z     },
2026-06-04T13:05:22.6666582Z     {
2026-06-04T13:05:22.6667199Z       "id": "REQ-HAZARD-ENVELOPE-DECODE-ORDER",
2026-06-04T13:05:22.6668069Z       "title": "Envelope decode order, ampersand decoded last (4.1)",
2026-06-04T13:05:22.6668553Z       "requiredStages": [
2026-06-04T13:05:22.6668971Z         "impl",
2026-06-04T13:05:22.6669646Z         "unit"
2026-06-04T13:05:22.6670061Z       ],
2026-06-04T13:05:22.6670501Z       "stages": {
2026-06-04T13:05:22.6670922Z         "doc": {
2026-06-04T13:05:22.6671542Z           "complete": false,
2026-06-04T13:05:22.6671996Z           "evidence": []
2026-06-04T13:05:22.6672411Z         },
2026-06-04T13:05:22.6672840Z         "impl": {
2026-06-04T13:05:22.6673301Z           "complete": true,
2026-06-04T13:05:22.6673750Z           "evidence": [
2026-06-04T13:05:22.6674158Z             {
2026-06-04T13:05:22.6674811Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T13:05:22.6675258Z               "line": 36
2026-06-04T13:05:22.6675694Z             },
2026-06-04T13:05:22.6676118Z             {
2026-06-04T13:05:22.6676767Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T13:05:22.6677221Z               "line": 68
2026-06-04T13:05:22.6677630Z             }
2026-06-04T13:05:22.6678051Z           ]
2026-06-04T13:05:22.6678475Z         },
2026-06-04T13:05:22.6678915Z         "int": {
2026-06-04T13:05:22.6679434Z           "complete": false,
2026-06-04T13:05:22.6679884Z           "evidence": []
2026-06-04T13:05:22.6680321Z         },
2026-06-04T13:05:22.6680743Z         "unit": {
2026-06-04T13:05:22.6681220Z           "complete": true,
2026-06-04T13:05:22.6681667Z           "evidence": [
2026-06-04T13:05:22.6682080Z             {
2026-06-04T13:05:22.6682746Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T13:05:22.6683196Z               "line": 143
2026-06-04T13:05:22.6683619Z             },
2026-06-04T13:05:22.6684029Z             {
2026-06-04T13:05:22.6684679Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T13:05:22.6685140Z               "line": 160
2026-06-04T13:05:22.6685563Z             },
2026-06-04T13:05:22.6685989Z             {
2026-06-04T13:05:22.6686638Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T13:05:22.6687098Z               "line": 168
2026-06-04T13:05:22.6687515Z             }
2026-06-04T13:05:22.6687954Z           ]
2026-06-04T13:05:22.6688376Z         }
2026-06-04T13:05:22.6688787Z       }
2026-06-04T13:05:22.6689236Z     },
2026-06-04T13:05:22.6689660Z     {
2026-06-04T13:05:22.6690324Z       "id": "REQ-HAZARD-ENVELOPE-PARSER-SAFE",
2026-06-04T13:05:22.6691312Z       "title": "Two-slice envelope parser is panic-free and tolerant (4.2)",
2026-06-04T13:05:22.6691805Z       "requiredStages": [
2026-06-04T13:05:22.6692234Z         "impl",
2026-06-04T13:05:22.6692649Z         "unit"
2026-06-04T13:05:22.6693066Z       ],
2026-06-04T13:05:22.6693500Z       "stages": {
2026-06-04T13:05:22.6697465Z         "doc": {
2026-06-04T13:05:22.6698042Z           "complete": false,
2026-06-04T13:05:22.6698513Z           "evidence": []
2026-06-04T13:05:22.6698935Z         },
2026-06-04T13:05:22.6699454Z         "impl": {
2026-06-04T13:05:22.6699932Z           "complete": true,
2026-06-04T13:05:22.6700380Z           "evidence": [
2026-06-04T13:05:22.6700799Z             {
2026-06-04T13:05:22.6701456Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T13:05:22.6701958Z               "line": 107
2026-06-04T13:05:22.6702377Z             }
2026-06-04T13:05:22.6702807Z           ]
2026-06-04T13:05:22.6703227Z         },
2026-06-04T13:05:22.6703648Z         "int": {
2026-06-04T13:05:22.6704124Z           "complete": false,
2026-06-04T13:05:22.6704576Z           "evidence": []
2026-06-04T13:05:22.6704992Z         },
2026-06-04T13:05:22.6705426Z         "unit": {
2026-06-04T13:05:22.6705888Z           "complete": true,
2026-06-04T13:05:22.6706343Z           "evidence": [
2026-06-04T13:05:22.6706751Z             {
2026-06-04T13:05:22.6707411Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T13:05:22.6707864Z               "line": 184
2026-06-04T13:05:22.6708293Z             },
2026-06-04T13:05:22.6708715Z             {
2026-06-04T13:05:22.6709397Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T13:05:22.6709858Z               "line": 193
2026-06-04T13:05:22.6710571Z             },
2026-06-04T13:05:22.6710998Z             {
2026-06-04T13:05:22.6711651Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T13:05:22.6712264Z               "line": 201
2026-06-04T13:05:22.6712698Z             },
2026-06-04T13:05:22.6713120Z             {
2026-06-04T13:05:22.6713776Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T13:05:22.6714232Z               "line": 210
2026-06-04T13:05:22.6714658Z             },
2026-06-04T13:05:22.6715076Z             {
2026-06-04T13:05:22.6715731Z               "path": "crates/spt-proto/src/envelope.rs",
2026-06-04T13:05:22.6716190Z               "line": 219
2026-06-04T13:05:22.6716607Z             }
2026-06-04T13:05:22.6717029Z           ]
2026-06-04T13:05:22.6717442Z         }
2026-06-04T13:05:22.6717902Z       }
2026-06-04T13:05:22.6718325Z     },
2026-06-04T13:05:22.6718770Z     {
2026-06-04T13:05:22.6719480Z       "id": "REQ-HAZARD-EPHEMERAL-CLEANUP",
2026-06-04T13:05:22.6720411Z       "title": "Ephemeral perch cleanup on every ring exit path (3.1)",
2026-06-04T13:05:22.6720925Z       "requiredStages": [
2026-06-04T13:05:22.6721353Z         "impl",
2026-06-04T13:05:22.6721792Z         "unit"
2026-06-04T13:05:22.6722207Z       ],
2026-06-04T13:05:22.6722650Z       "stages": {
2026-06-04T13:05:22.6723078Z         "doc": {
2026-06-04T13:05:22.6723553Z           "complete": false,
2026-06-04T13:05:22.6724009Z           "evidence": []
2026-06-04T13:05:22.6724429Z         },
2026-06-04T13:05:22.6724868Z         "impl": {
2026-06-04T13:05:22.6725330Z           "complete": true,
2026-06-04T13:05:22.6725778Z           "evidence": [
2026-06-04T13:05:22.6726204Z             {
2026-06-04T13:05:22.6726781Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T13:05:22.6727228Z               "line": 14
2026-06-04T13:05:22.6727638Z             },
2026-06-04T13:05:22.6728055Z             {
2026-06-04T13:05:22.6728630Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T13:05:22.6729087Z               "line": 62
2026-06-04T13:05:22.6729575Z             }
2026-06-04T13:05:22.6729991Z           ]
2026-06-04T13:05:22.6730406Z         },
2026-06-04T13:05:22.6730826Z         "int": {
2026-06-04T13:05:22.6731316Z           "complete": false,
2026-06-04T13:05:22.6731766Z           "evidence": []
2026-06-04T13:05:22.6732185Z         },
2026-06-04T13:05:22.6732607Z         "unit": {
2026-06-04T13:05:22.6733062Z           "complete": true,
2026-06-04T13:05:22.6733512Z           "evidence": [
2026-06-04T13:05:22.6733925Z             {
2026-06-04T13:05:22.6734511Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T13:05:22.6734957Z               "line": 160
2026-06-04T13:05:22.6735378Z             },
2026-06-04T13:05:22.6735801Z             {
2026-06-04T13:05:22.6736387Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T13:05:22.6736842Z               "line": 197
2026-06-04T13:05:22.6737260Z             },
2026-06-04T13:05:22.6737677Z             {
2026-06-04T13:05:22.6738256Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T13:05:22.6738724Z               "line": 213
2026-06-04T13:05:22.6739152Z             }
2026-06-04T13:05:22.6739603Z           ]
2026-06-04T13:05:22.6740039Z         }
2026-06-04T13:05:22.6740451Z       }
2026-06-04T13:05:22.6740868Z     },
2026-06-04T13:05:22.6741278Z     {
2026-06-04T13:05:22.6741906Z       "id": "REQ-HAZARD-EVENTPART-REASSEMBLY",
2026-06-04T13:05:22.6743182Z       "title": "EVENT-PART split/reassembly is byte-exact; orphan parts dropped silently",
2026-06-04T13:05:22.6743669Z       "requiredStages": [
2026-06-04T13:05:22.6744099Z         "impl",
2026-06-04T13:05:22.6744518Z         "unit"
2026-06-04T13:05:22.6744938Z       ],
2026-06-04T13:05:22.6745368Z       "stages": {
2026-06-04T13:05:22.6745798Z         "doc": {
2026-06-04T13:05:22.6746281Z           "complete": false,
2026-06-04T13:05:22.6746737Z           "evidence": []
2026-06-04T13:05:22.6747159Z         },
2026-06-04T13:05:22.6747585Z         "impl": {
2026-06-04T13:05:22.6748059Z           "complete": true,
2026-06-04T13:05:22.6748703Z           "evidence": [
2026-06-04T13:05:22.6749131Z             {
2026-06-04T13:05:22.6749800Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T13:05:22.6750383Z               "line": 76
2026-06-04T13:05:22.6750811Z             },
2026-06-04T13:05:22.6751224Z             {
2026-06-04T13:05:22.6751848Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T13:05:22.6752307Z               "line": 163
2026-06-04T13:05:22.6752729Z             },
2026-06-04T13:05:22.6753148Z             {
2026-06-04T13:05:22.6753764Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T13:05:22.6754224Z               "line": 229
2026-06-04T13:05:22.6754641Z             },
2026-06-04T13:05:22.6755055Z             {
2026-06-04T13:05:22.6755668Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T13:05:22.6756116Z               "line": 265
2026-06-04T13:05:22.6756534Z             }
2026-06-04T13:05:22.6756943Z           ]
2026-06-04T13:05:22.6757388Z         },
2026-06-04T13:05:22.6757812Z         "int": {
2026-06-04T13:05:22.6758290Z           "complete": false,
2026-06-04T13:05:22.6758768Z           "evidence": []
2026-06-04T13:05:22.6759214Z         },
2026-06-04T13:05:22.6759643Z         "unit": {
2026-06-04T13:05:22.6760109Z           "complete": true,
2026-06-04T13:05:22.6760563Z           "evidence": [
2026-06-04T13:05:22.6760976Z             {
2026-06-04T13:05:22.6761589Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T13:05:22.6762044Z               "line": 310
2026-06-04T13:05:22.6762459Z             },
2026-06-04T13:05:22.6762883Z             {
2026-06-04T13:05:22.6763491Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T13:05:22.6763945Z               "line": 318
2026-06-04T13:05:22.6764356Z             },
2026-06-04T13:05:22.6764781Z             {
2026-06-04T13:05:22.6765396Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T13:05:22.6765854Z               "line": 341
2026-06-04T13:05:22.6766293Z             },
2026-06-04T13:05:22.6766703Z             {
2026-06-04T13:05:22.6767313Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T13:05:22.6767777Z               "line": 378
2026-06-04T13:05:22.6768206Z             },
2026-06-04T13:05:22.6768632Z             {
2026-06-04T13:05:22.6769288Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T13:05:22.6769753Z               "line": 389
2026-06-04T13:05:22.6770188Z             },
2026-06-04T13:05:22.6770614Z             {
2026-06-04T13:05:22.6771221Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T13:05:22.6771682Z               "line": 401
2026-06-04T13:05:22.6772108Z             },
2026-06-04T13:05:22.6772519Z             {
2026-06-04T13:05:22.6773134Z               "path": "crates/spt-proto/src/chunk.rs",
2026-06-04T13:05:22.6773582Z               "line": 413
2026-06-04T13:05:22.6774008Z             }
2026-06-04T13:05:22.6774420Z           ]
2026-06-04T13:05:22.6774837Z         }
2026-06-04T13:05:22.6778829Z       }
2026-06-04T13:05:22.6779453Z     },
2026-06-04T13:05:22.6779884Z     {
2026-06-04T13:05:22.6780420Z       "id": "REQ-HAZARD-GEN-START-NOW",
2026-06-04T13:05:22.6781271Z       "title": "gen_start = now() on cold-start and handoff (2.4)",
2026-06-04T13:05:22.6781755Z       "requiredStages": [
2026-06-04T13:05:22.6782189Z         "impl",
2026-06-04T13:05:22.6782607Z         "int"
2026-06-04T13:05:22.6783020Z       ],
2026-06-04T13:05:22.6783468Z       "stages": {
2026-06-04T13:05:22.6783886Z         "doc": {
2026-06-04T13:05:22.6784369Z           "complete": false,
2026-06-04T13:05:22.6784814Z           "evidence": []
2026-06-04T13:05:22.6785236Z         },
2026-06-04T13:05:22.6785675Z         "impl": {
2026-06-04T13:05:22.6786141Z           "complete": true,
2026-06-04T13:05:22.6786598Z           "evidence": [
2026-06-04T13:05:22.6787013Z             {
2026-06-04T13:05:22.6787639Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T13:05:22.6788089Z               "line": 22
2026-06-04T13:05:22.6788781Z             }
2026-06-04T13:05:22.6789251Z           ]
2026-06-04T13:05:22.6789667Z         },
2026-06-04T13:05:22.6790253Z         "int": {
2026-06-04T13:05:22.6790718Z           "complete": true,
2026-06-04T13:05:22.6791172Z           "evidence": [
2026-06-04T13:05:22.6791581Z             {
2026-06-04T13:05:22.6792249Z               "path": "crates/spt-daemon/tests/handoff.rs",
2026-06-04T13:05:22.6792699Z               "line": 18
2026-06-04T13:05:22.6793114Z             }
2026-06-04T13:05:22.6793535Z           ]
2026-06-04T13:05:22.6793948Z         },
2026-06-04T13:05:22.6794388Z         "unit": {
2026-06-04T13:05:22.6794856Z           "complete": false,
2026-06-04T13:05:22.6795317Z           "evidence": []
2026-06-04T13:05:22.6795739Z         }
2026-06-04T13:05:22.6796152Z       }
2026-06-04T13:05:22.6796565Z     },
2026-06-04T13:05:22.6796970Z     {
2026-06-04T13:05:22.6797583Z       "id": "REQ-HAZARD-GRACE-BEFORE-SIGNOFF",
2026-06-04T13:05:22.6798674Z       "title": "Grace-period wait completes before composing INIT_SIGNOFF (1.1)",
2026-06-04T13:05:22.6799210Z       "requiredStages": [
2026-06-04T13:05:22.6799642Z         "impl",
2026-06-04T13:05:22.6800075Z         "unit"
2026-06-04T13:05:22.6800495Z       ],
2026-06-04T13:05:22.6800928Z       "stages": {
2026-06-04T13:05:22.6801360Z         "doc": {
2026-06-04T13:05:22.6801830Z           "complete": false,
2026-06-04T13:05:22.6802285Z           "evidence": []
2026-06-04T13:05:22.6802703Z         },
2026-06-04T13:05:22.6803132Z         "impl": {
2026-06-04T13:05:22.6803604Z           "complete": true,
2026-06-04T13:05:22.6804048Z           "evidence": [
2026-06-04T13:05:22.6804470Z             {
2026-06-04T13:05:22.6805133Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.6805598Z               "line": 340
2026-06-04T13:05:22.6806024Z             },
2026-06-04T13:05:22.6806443Z             {
2026-06-04T13:05:22.6807062Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T13:05:22.6807521Z               "line": 27
2026-06-04T13:05:22.6807943Z             }
2026-06-04T13:05:22.6808356Z           ]
2026-06-04T13:05:22.6808776Z         },
2026-06-04T13:05:22.6809255Z         "int": {
2026-06-04T13:05:22.6809730Z           "complete": false,
2026-06-04T13:05:22.6810197Z           "evidence": []
2026-06-04T13:05:22.6810613Z         },
2026-06-04T13:05:22.6811039Z         "unit": {
2026-06-04T13:05:22.6811505Z           "complete": true,
2026-06-04T13:05:22.6811960Z           "evidence": [
2026-06-04T13:05:22.6812378Z             {
2026-06-04T13:05:22.6813036Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.6813495Z               "line": 745
2026-06-04T13:05:22.6813909Z             },
2026-06-04T13:05:22.6814324Z             {
2026-06-04T13:05:22.6814938Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T13:05:22.6815396Z               "line": 164
2026-06-04T13:05:22.6815812Z             }
2026-06-04T13:05:22.6816226Z           ]
2026-06-04T13:05:22.6816664Z         }
2026-06-04T13:05:22.6817079Z       }
2026-06-04T13:05:22.6817491Z     },
2026-06-04T13:05:22.6817904Z     {
2026-06-04T13:05:22.6818539Z       "id": "REQ-HAZARD-HANDOFF-ARGV-COMPAT",
2026-06-04T13:05:22.6819498Z       "title": "Broker/brain IPC + handoff argv version-tolerant (2.3)",
2026-06-04T13:05:22.6819982Z       "requiredStages": [
2026-06-04T13:05:22.6820407Z         "impl",
2026-06-04T13:05:22.6820830Z         "unit"
2026-06-04T13:05:22.6821243Z       ],
2026-06-04T13:05:22.6821671Z       "stages": {
2026-06-04T13:05:22.6822107Z         "doc": {
2026-06-04T13:05:22.6822587Z           "complete": false,
2026-06-04T13:05:22.6823042Z           "evidence": []
2026-06-04T13:05:22.6823459Z         },
2026-06-04T13:05:22.6823886Z         "impl": {
2026-06-04T13:05:22.6824365Z           "complete": true,
2026-06-04T13:05:22.6824812Z           "evidence": [
2026-06-04T13:05:22.6825233Z             {
2026-06-04T13:05:22.6825859Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T13:05:22.6826494Z               "line": 20
2026-06-04T13:05:22.6826929Z             },
2026-06-04T13:05:22.6827346Z             {
2026-06-04T13:05:22.6828106Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T13:05:22.6828554Z               "line": 94
2026-06-04T13:05:22.6828983Z             },
2026-06-04T13:05:22.6829450Z             {
2026-06-04T13:05:22.6830127Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T13:05:22.6830576Z               "line": 70
2026-06-04T13:05:22.6830989Z             },
2026-06-04T13:05:22.6831410Z             {
2026-06-04T13:05:22.6832074Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T13:05:22.6832529Z               "line": 82
2026-06-04T13:05:22.6832955Z             }
2026-06-04T13:05:22.6833374Z           ]
2026-06-04T13:05:22.6833790Z         },
2026-06-04T13:05:22.6834206Z         "int": {
2026-06-04T13:05:22.6834679Z           "complete": false,
2026-06-04T13:05:22.6835128Z           "evidence": []
2026-06-04T13:05:22.6835571Z         },
2026-06-04T13:05:22.6835998Z         "unit": {
2026-06-04T13:05:22.6836464Z           "complete": true,
2026-06-04T13:05:22.6836930Z           "evidence": [
2026-06-04T13:05:22.6837343Z             {
2026-06-04T13:05:22.6837962Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T13:05:22.6838411Z               "line": 139
2026-06-04T13:05:22.6838840Z             },
2026-06-04T13:05:22.6839303Z             {
2026-06-04T13:05:22.6839926Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T13:05:22.6840385Z               "line": 162
2026-06-04T13:05:22.6840801Z             },
2026-06-04T13:05:22.6841221Z             {
2026-06-04T13:05:22.6841838Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T13:05:22.6842297Z               "line": 173
2026-06-04T13:05:22.6842722Z             },
2026-06-04T13:05:22.6843133Z             {
2026-06-04T13:05:22.6843755Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T13:05:22.6844220Z               "line": 189
2026-06-04T13:05:22.6844646Z             },
2026-06-04T13:05:22.6845063Z             {
2026-06-04T13:05:22.6845681Z               "path": "crates/spt-daemon/src/frame.rs",
2026-06-04T13:05:22.6846156Z               "line": 200
2026-06-04T13:05:22.6846576Z             },
2026-06-04T13:05:22.6847004Z             {
2026-06-04T13:05:22.6847662Z               "path": "crates/spt-daemon/src/transport.rs",
2026-06-04T13:05:22.6848116Z               "line": 139
2026-06-04T13:05:22.6848535Z             }
2026-06-04T13:05:22.6848952Z           ]
2026-06-04T13:05:22.6849408Z         }
2026-06-04T13:05:22.6849819Z       }
2026-06-04T13:05:22.6850234Z     },
2026-06-04T13:05:22.6850639Z     {
2026-06-04T13:05:22.6851160Z       "id": "REQ-HAZARD-ID-CHARSET",
2026-06-04T13:05:22.6852670Z       "title": "Addressable-id charset reserves :/@ delimiters; validated at every creation seam (4.6)",
2026-06-04T13:05:22.6853163Z       "requiredStages": [
2026-06-04T13:05:22.6853593Z         "impl",
2026-06-04T13:05:22.6854036Z         "unit"
2026-06-04T13:05:22.6854455Z       ],
2026-06-04T13:05:22.6854882Z       "stages": {
2026-06-04T13:05:22.6855323Z         "doc": {
2026-06-04T13:05:22.6855790Z           "complete": true,
2026-06-04T13:05:22.6856245Z           "evidence": [
2026-06-04T13:05:22.6856665Z             {
2026-06-04T13:05:22.6857224Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T13:05:22.6861199Z               "line": 131
2026-06-04T13:05:22.6861707Z             }
2026-06-04T13:05:22.6862139Z           ]
2026-06-04T13:05:22.6862552Z         },
2026-06-04T13:05:22.6862994Z         "impl": {
2026-06-04T13:05:22.6863468Z           "complete": true,
2026-06-04T13:05:22.6863909Z           "evidence": [
2026-06-04T13:05:22.6864332Z             {
2026-06-04T13:05:22.6864935Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T13:05:22.6865387Z               "line": 50
2026-06-04T13:05:22.6865799Z             },
2026-06-04T13:05:22.6866222Z             {
2026-06-04T13:05:22.6867132Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T13:05:22.6867575Z               "line": 17
2026-06-04T13:05:22.6868007Z             },
2026-06-04T13:05:22.6868556Z             {
2026-06-04T13:05:22.6869247Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:22.6869719Z               "line": 171
2026-06-04T13:05:22.6870139Z             },
2026-06-04T13:05:22.6870569Z             {
2026-06-04T13:05:22.6871179Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:22.6871635Z               "line": 265
2026-06-04T13:05:22.6872055Z             },
2026-06-04T13:05:22.6872478Z             {
2026-06-04T13:05:22.6873087Z               "path": "crates/spt/src/api/worker.rs",
2026-06-04T13:05:22.6873532Z               "line": 32
2026-06-04T13:05:22.6873956Z             }
2026-06-04T13:05:22.6874376Z           ]
2026-06-04T13:05:22.6874796Z         },
2026-06-04T13:05:22.6875222Z         "int": {
2026-06-04T13:05:22.6875703Z           "complete": false,
2026-06-04T13:05:22.6876188Z           "evidence": []
2026-06-04T13:05:22.6876605Z         },
2026-06-04T13:05:22.6877039Z         "unit": {
2026-06-04T13:05:22.6877510Z           "complete": true,
2026-06-04T13:05:22.6877969Z           "evidence": [
2026-06-04T13:05:22.6878379Z             {
2026-06-04T13:05:22.6878966Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T13:05:22.6879450Z               "line": 94
2026-06-04T13:05:22.6879870Z             },
2026-06-04T13:05:22.6880287Z             {
2026-06-04T13:05:22.6880863Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T13:05:22.6881315Z               "line": 111
2026-06-04T13:05:22.6881761Z             },
2026-06-04T13:05:22.6882286Z             {
2026-06-04T13:05:22.6882939Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T13:05:22.6883394Z               "line": 124
2026-06-04T13:05:22.6883818Z             },
2026-06-04T13:05:22.6884227Z             {
2026-06-04T13:05:22.6884816Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T13:05:22.6885293Z               "line": 134
2026-06-04T13:05:22.6885720Z             },
2026-06-04T13:05:22.6886138Z             {
2026-06-04T13:05:22.6886733Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T13:05:22.6887194Z               "line": 142
2026-06-04T13:05:22.6887615Z             },
2026-06-04T13:05:22.6888037Z             {
2026-06-04T13:05:22.6888615Z               "path": "crates/spt-proto/src/id.rs",
2026-06-04T13:05:22.6889067Z               "line": 154
2026-06-04T13:05:22.6889556Z             },
2026-06-04T13:05:22.6889983Z             {
2026-06-04T13:05:22.6890683Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:22.6891134Z               "line": 432
2026-06-04T13:05:22.6891555Z             }
2026-06-04T13:05:22.6891965Z           ]
2026-06-04T13:05:22.6892392Z         }
2026-06-04T13:05:22.6892813Z       }
2026-06-04T13:05:22.6893220Z     },
2026-06-04T13:05:22.6893637Z     {
2026-06-04T13:05:22.6894184Z       "id": "REQ-HAZARD-INBOX-NO-DOUBLE",
2026-06-04T13:05:22.6894915Z       "title": "No double-delivery via legacy inbox (4.5)",
2026-06-04T13:05:22.6895392Z       "requiredStages": [
2026-06-04T13:05:22.6895841Z         "impl",
2026-06-04T13:05:22.6896264Z         "unit"
2026-06-04T13:05:22.6896673Z       ],
2026-06-04T13:05:22.6897108Z       "stages": {
2026-06-04T13:05:22.6897522Z         "doc": {
2026-06-04T13:05:22.6897998Z           "complete": false,
2026-06-04T13:05:22.6898454Z           "evidence": []
2026-06-04T13:05:22.6898876Z         },
2026-06-04T13:05:22.6899358Z         "impl": {
2026-06-04T13:05:22.6899827Z           "complete": true,
2026-06-04T13:05:22.6900276Z           "evidence": [
2026-06-04T13:05:22.6900689Z             {
2026-06-04T13:05:22.6901304Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.6901754Z               "line": 128
2026-06-04T13:05:22.6902176Z             }
2026-06-04T13:05:22.6902599Z           ]
2026-06-04T13:05:22.6903009Z         },
2026-06-04T13:05:22.6903643Z         "int": {
2026-06-04T13:05:22.6904115Z           "complete": false,
2026-06-04T13:05:22.6904576Z           "evidence": []
2026-06-04T13:05:22.6905134Z         },
2026-06-04T13:05:22.6905572Z         "unit": {
2026-06-04T13:05:22.6906052Z           "complete": true,
2026-06-04T13:05:22.6906502Z           "evidence": [
2026-06-04T13:05:22.6906926Z             {
2026-06-04T13:05:22.6907529Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.6907987Z               "line": 205
2026-06-04T13:05:22.6908402Z             }
2026-06-04T13:05:22.6908833Z           ]
2026-06-04T13:05:22.6909302Z         }
2026-06-04T13:05:22.6909715Z       }
2026-06-04T13:05:22.6910134Z     },
2026-06-04T13:05:22.6910543Z     {
2026-06-04T13:05:22.6911144Z       "id": "REQ-HAZARD-INFO-JSON-TORN-READ",
2026-06-04T13:05:22.6911986Z       "title": "State-file reads tolerate concurrent writes (1.2)",
2026-06-04T13:05:22.6912471Z       "requiredStages": [
2026-06-04T13:05:22.6912901Z         "impl",
2026-06-04T13:05:22.6913338Z         "unit"
2026-06-04T13:05:22.6913757Z       ],
2026-06-04T13:05:22.6914192Z       "stages": {
2026-06-04T13:05:22.6914634Z         "doc": {
2026-06-04T13:05:22.6915103Z           "complete": false,
2026-06-04T13:05:22.6915570Z           "evidence": []
2026-06-04T13:05:22.6915990Z         },
2026-06-04T13:05:22.6916430Z         "impl": {
2026-06-04T13:05:22.6916901Z           "complete": true,
2026-06-04T13:05:22.6917343Z           "evidence": [
2026-06-04T13:05:22.6917761Z             {
2026-06-04T13:05:22.6918363Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.6918821Z               "line": 190
2026-06-04T13:05:22.6919284Z             },
2026-06-04T13:05:22.6919703Z             {
2026-06-04T13:05:22.6920304Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.6920757Z               "line": 201
2026-06-04T13:05:22.6921188Z             },
2026-06-04T13:05:22.6921595Z             {
2026-06-04T13:05:22.6922195Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.6922666Z               "line": 219
2026-06-04T13:05:22.6923079Z             }
2026-06-04T13:05:22.6923521Z           ]
2026-06-04T13:05:22.6923932Z         },
2026-06-04T13:05:22.6924362Z         "int": {
2026-06-04T13:05:22.6924831Z           "complete": false,
2026-06-04T13:05:22.6925290Z           "evidence": []
2026-06-04T13:05:22.6925714Z         },
2026-06-04T13:05:22.6926143Z         "unit": {
2026-06-04T13:05:22.6926615Z           "complete": true,
2026-06-04T13:05:22.6927058Z           "evidence": [
2026-06-04T13:05:22.6927482Z             {
2026-06-04T13:05:22.6928073Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.6928530Z               "line": 243
2026-06-04T13:05:22.6928952Z             },
2026-06-04T13:05:22.6929406Z             {
2026-06-04T13:05:22.6930018Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.6930471Z               "line": 261
2026-06-04T13:05:22.6930897Z             },
2026-06-04T13:05:22.6931334Z             {
2026-06-04T13:05:22.6931946Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.6932402Z               "line": 398
2026-06-04T13:05:22.6932839Z             },
2026-06-04T13:05:22.6933261Z             {
2026-06-04T13:05:22.6933858Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.6934318Z               "line": 409
2026-06-04T13:05:22.6934728Z             },
2026-06-04T13:05:22.6935154Z             {
2026-06-04T13:05:22.6935755Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.6936202Z               "line": 422
2026-06-04T13:05:22.6936627Z             }
2026-06-04T13:05:22.6937040Z           ]
2026-06-04T13:05:22.6937460Z         }
2026-06-04T13:05:22.6941575Z       }
2026-06-04T13:05:22.6942078Z     },
2026-06-04T13:05:22.6942493Z     {
2026-06-04T13:05:22.6943043Z       "id": "REQ-HAZARD-LOCAL-API-AUTH",
2026-06-04T13:05:22.6944370Z       "title": "Every local `api` mutation authenticated to an endpoint/session (codex #13)",
2026-06-04T13:05:22.6945135Z       "requiredStages": [
2026-06-04T13:05:22.6945575Z         "impl",
2026-06-04T13:05:22.6946145Z         "unit"
2026-06-04T13:05:22.6946577Z       ],
2026-06-04T13:05:22.6947014Z       "stages": {
2026-06-04T13:05:22.6947435Z         "doc": {
2026-06-04T13:05:22.6947919Z           "complete": false,
2026-06-04T13:05:22.6948376Z           "evidence": []
2026-06-04T13:05:22.6948797Z         },
2026-06-04T13:05:22.6949283Z         "impl": {
2026-06-04T13:05:22.6949764Z           "complete": true,
2026-06-04T13:05:22.6950225Z           "evidence": [
2026-06-04T13:05:22.6950642Z             {
2026-06-04T13:05:22.6951233Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T13:05:22.6951686Z               "line": 14
2026-06-04T13:05:22.6952115Z             },
2026-06-04T13:05:22.6952534Z             {
2026-06-04T13:05:22.6953115Z               "path": "crates/spt/src/api/mod.rs",
2026-06-04T13:05:22.6953569Z               "line": 305
2026-06-04T13:05:22.6954012Z             }
2026-06-04T13:05:22.6954435Z           ]
2026-06-04T13:05:22.6954854Z         },
2026-06-04T13:05:22.6955291Z         "int": {
2026-06-04T13:05:22.6955775Z           "complete": false,
2026-06-04T13:05:22.6956247Z           "evidence": []
2026-06-04T13:05:22.6956672Z         },
2026-06-04T13:05:22.6957106Z         "unit": {
2026-06-04T13:05:22.6957585Z           "complete": true,
2026-06-04T13:05:22.6958040Z           "evidence": [
2026-06-04T13:05:22.6958462Z             {
2026-06-04T13:05:22.6959037Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T13:05:22.6959532Z               "line": 130
2026-06-04T13:05:22.6959960Z             },
2026-06-04T13:05:22.6960372Z             {
2026-06-04T13:05:22.6960952Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T13:05:22.6961402Z               "line": 138
2026-06-04T13:05:22.6961823Z             },
2026-06-04T13:05:22.6962233Z             {
2026-06-04T13:05:22.6962816Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T13:05:22.6963293Z               "line": 146
2026-06-04T13:05:22.6963709Z             },
2026-06-04T13:05:22.6964133Z             {
2026-06-04T13:05:22.6964720Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T13:05:22.6965175Z               "line": 154
2026-06-04T13:05:22.6965591Z             },
2026-06-04T13:05:22.6966016Z             {
2026-06-04T13:05:22.6966597Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T13:05:22.6967047Z               "line": 162
2026-06-04T13:05:22.6967471Z             },
2026-06-04T13:05:22.6967882Z             {
2026-06-04T13:05:22.6968460Z               "path": "crates/spt/src/api/auth.rs",
2026-06-04T13:05:22.6968906Z               "line": 170
2026-06-04T13:05:22.6969364Z             }
2026-06-04T13:05:22.6969789Z           ]
2026-06-04T13:05:22.6970201Z         }
2026-06-04T13:05:22.6970618Z       }
2026-06-04T13:05:22.6971022Z     },
2026-06-04T13:05:22.6971434Z     {
2026-06-04T13:05:22.6971987Z       "id": "REQ-HAZARD-PAIR-RATE-LIMIT",
2026-06-04T13:05:22.6977573Z       "title": "Subnet-global pairing rate limit: one active ceremony per subnet, shared attempt counter, exponential backoff — a public pre-trust relay + multiple seed-holders otherwise enables distributed SPAKE2 guessing (and ±1 TOTP window triples the valid-password space) (ADR-0005 #11)",
2026-06-04T13:05:22.6978115Z       "requiredStages": [
2026-06-04T13:05:22.6978540Z         "impl",
2026-06-04T13:05:22.6978966Z         "unit"
2026-06-04T13:05:22.6979420Z       ],
2026-06-04T13:05:22.6979865Z       "stages": {
2026-06-04T13:05:22.6980292Z         "doc": {
2026-06-04T13:05:22.6980764Z           "complete": false,
2026-06-04T13:05:22.6981220Z           "evidence": []
2026-06-04T13:05:22.6981629Z         },
2026-06-04T13:05:22.6982063Z         "impl": {
2026-06-04T13:05:22.6982533Z           "complete": true,
2026-06-04T13:05:22.6982981Z           "evidence": [
2026-06-04T13:05:22.6983400Z             {
2026-06-04T13:05:22.6984181Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T13:05:22.6984823Z               "line": 34
2026-06-04T13:05:22.6985241Z             }
2026-06-04T13:05:22.6985839Z           ]
2026-06-04T13:05:22.6986264Z         },
2026-06-04T13:05:22.6986698Z         "int": {
2026-06-04T13:05:22.6987174Z           "complete": false,
2026-06-04T13:05:22.6987628Z           "evidence": []
2026-06-04T13:05:22.6988047Z         },
2026-06-04T13:05:22.6988479Z         "unit": {
2026-06-04T13:05:22.6988957Z           "complete": true,
2026-06-04T13:05:22.6989444Z           "evidence": [
2026-06-04T13:05:22.6989878Z             {
2026-06-04T13:05:22.6990663Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T13:05:22.6991118Z               "line": 188
2026-06-04T13:05:22.6991541Z             },
2026-06-04T13:05:22.6991953Z             {
2026-06-04T13:05:22.6992743Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T13:05:22.6993189Z               "line": 200
2026-06-04T13:05:22.6993638Z             },
2026-06-04T13:05:22.6994051Z             {
2026-06-04T13:05:22.6994822Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T13:05:22.6995300Z               "line": 211
2026-06-04T13:05:22.6995720Z             },
2026-06-04T13:05:22.6996140Z             {
2026-06-04T13:05:22.6996909Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T13:05:22.6997370Z               "line": 245
2026-06-04T13:05:22.6997801Z             },
2026-06-04T13:05:22.6998215Z             {
2026-06-04T13:05:22.6998992Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T13:05:22.6999476Z               "line": 267
2026-06-04T13:05:22.6999903Z             },
2026-06-04T13:05:22.7000320Z             {
2026-06-04T13:05:22.7001088Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T13:05:22.7001551Z               "line": 288
2026-06-04T13:05:22.7001973Z             },
2026-06-04T13:05:22.7002412Z             {
2026-06-04T13:05:22.7003191Z               "path": "crates/spt-net/src/net/pairing/ratelimit.rs",
2026-06-04T13:05:22.7003654Z               "line": 304
2026-06-04T13:05:22.7004088Z             }
2026-06-04T13:05:22.7004497Z           ]
2026-06-04T13:05:22.7004913Z         }
2026-06-04T13:05:22.7005322Z       }
2026-06-04T13:05:22.7005730Z     },
2026-06-04T13:05:22.7006134Z     {
2026-06-04T13:05:22.7006724Z       "id": "REQ-HAZARD-PAIR-SEED-ROTATION",
2026-06-04T13:05:22.7010283Z       "title": "Removing a node rotates the subnet seed (epoch bump) so an old node/old seed cannot rejoin; trust-store delete alone is NOT revocation because the seed is replicated to every trusted node (ADR-0005 #10)",
2026-06-04T13:05:22.7010772Z       "requiredStages": [
2026-06-04T13:05:22.7011207Z         "impl",
2026-06-04T13:05:22.7011631Z         "unit"
2026-06-04T13:05:22.7012044Z       ],
2026-06-04T13:05:22.7012469Z       "stages": {
2026-06-04T13:05:22.7012894Z         "doc": {
2026-06-04T13:05:22.7013381Z           "complete": false,
2026-06-04T13:05:22.7013829Z           "evidence": []
2026-06-04T13:05:22.7014245Z         },
2026-06-04T13:05:22.7014668Z         "impl": {
2026-06-04T13:05:22.7015158Z           "complete": true,
2026-06-04T13:05:22.7015605Z           "evidence": [
2026-06-04T13:05:22.7016025Z             {
2026-06-04T13:05:22.7016657Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7017101Z               "line": 29
2026-06-04T13:05:22.7017531Z             },
2026-06-04T13:05:22.7017946Z             {
2026-06-04T13:05:22.7018565Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7019016Z               "line": 154
2026-06-04T13:05:22.7019473Z             },
2026-06-04T13:05:22.7019897Z             {
2026-06-04T13:05:22.7020514Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7020976Z               "line": 173
2026-06-04T13:05:22.7021394Z             },
2026-06-04T13:05:22.7021814Z             {
2026-06-04T13:05:22.7022598Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7023064Z               "line": 200
2026-06-04T13:05:22.7023483Z             }
2026-06-04T13:05:22.7024044Z           ]
2026-06-04T13:05:22.7024468Z         },
2026-06-04T13:05:22.7024886Z         "int": {
2026-06-04T13:05:22.7025367Z           "complete": false,
2026-06-04T13:05:22.7025819Z           "evidence": []
2026-06-04T13:05:22.7026237Z         },
2026-06-04T13:05:22.7026667Z         "unit": {
2026-06-04T13:05:22.7027127Z           "complete": true,
2026-06-04T13:05:22.7027585Z           "evidence": [
2026-06-04T13:05:22.7031576Z             {
2026-06-04T13:05:22.7032320Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7032785Z               "line": 276
2026-06-04T13:05:22.7033215Z             },
2026-06-04T13:05:22.7033635Z             {
2026-06-04T13:05:22.7034251Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7034712Z               "line": 291
2026-06-04T13:05:22.7035177Z             },
2026-06-04T13:05:22.7035611Z             {
2026-06-04T13:05:22.7036234Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7036701Z               "line": 310
2026-06-04T13:05:22.7037129Z             },
2026-06-04T13:05:22.7037547Z             {
2026-06-04T13:05:22.7038172Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7038622Z               "line": 326
2026-06-04T13:05:22.7039040Z             },
2026-06-04T13:05:22.7039522Z             {
2026-06-04T13:05:22.7040140Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7040601Z               "line": 376
2026-06-04T13:05:22.7041016Z             },
2026-06-04T13:05:22.7041433Z             {
2026-06-04T13:05:22.7042043Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7042500Z               "line": 390
2026-06-04T13:05:22.7042938Z             },
2026-06-04T13:05:22.7043408Z             {
2026-06-04T13:05:22.7044106Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7044614Z               "line": 401
2026-06-04T13:05:22.7045045Z             },
2026-06-04T13:05:22.7045475Z             {
2026-06-04T13:05:22.7046099Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.7046561Z               "line": 412
2026-06-04T13:05:22.7046975Z             }
2026-06-04T13:05:22.7047401Z           ]
2026-06-04T13:05:22.7047816Z         }
2026-06-04T13:05:22.7048236Z       }
2026-06-04T13:05:22.7048646Z     },
2026-06-04T13:05:22.7049061Z     {
2026-06-04T13:05:22.7049739Z       "id": "REQ-HAZARD-PAIR-TRANSCRIPT-BIND",
2026-06-04T13:05:22.7053726Z       "title": "Pairing transcript binds roles, both node pubkeys, subnet ID, seed epoch, TOTP time-step, and confirmation MACs — or unknown-key-share/reflection/wrong-subnet/replay pairing remain possible (ADR-0005 #12)",
2026-06-04T13:05:22.7054236Z       "requiredStages": [
2026-06-04T13:05:22.7054668Z         "impl",
2026-06-04T13:05:22.7055097Z         "unit"
2026-06-04T13:05:22.7055545Z       ],
2026-06-04T13:05:22.7055975Z       "stages": {
2026-06-04T13:05:22.7056404Z         "doc": {
2026-06-04T13:05:22.7056886Z           "complete": false,
2026-06-04T13:05:22.7057346Z           "evidence": []
2026-06-04T13:05:22.7057759Z         },
2026-06-04T13:05:22.7058190Z         "impl": {
2026-06-04T13:05:22.7058642Z           "complete": true,
2026-06-04T13:05:22.7059097Z           "evidence": [
2026-06-04T13:05:22.7059571Z             {
2026-06-04T13:05:22.7060287Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.7060744Z               "line": 27
2026-06-04T13:05:22.7061160Z             },
2026-06-04T13:05:22.7061583Z             {
2026-06-04T13:05:22.7062292Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.7062750Z               "line": 110
2026-06-04T13:05:22.7063173Z             },
2026-06-04T13:05:22.7063589Z             {
2026-06-04T13:05:22.7064308Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.7065048Z               "line": 153
2026-06-04T13:05:22.7065477Z             },
2026-06-04T13:05:22.7065903Z             {
2026-06-04T13:05:22.7066757Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.7067218Z               "line": 182
2026-06-04T13:05:22.7067635Z             },
2026-06-04T13:05:22.7068054Z             {
2026-06-04T13:05:22.7068841Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T13:05:22.7069335Z               "line": 31
2026-06-04T13:05:22.7069764Z             },
2026-06-04T13:05:22.7070174Z             {
2026-06-04T13:05:22.7070977Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T13:05:22.7071428Z               "line": 113
2026-06-04T13:05:22.7071846Z             },
2026-06-04T13:05:22.7072261Z             {
2026-06-04T13:05:22.7073054Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T13:05:22.7073511Z               "line": 138
2026-06-04T13:05:22.7073944Z             }
2026-06-04T13:05:22.7074364Z           ]
2026-06-04T13:05:22.7074775Z         },
2026-06-04T13:05:22.7075224Z         "int": {
2026-06-04T13:05:22.7075689Z           "complete": false,
2026-06-04T13:05:22.7076152Z           "evidence": []
2026-06-04T13:05:22.7076573Z         },
2026-06-04T13:05:22.7076993Z         "unit": {
2026-06-04T13:05:22.7077470Z           "complete": true,
2026-06-04T13:05:22.7077918Z           "evidence": [
2026-06-04T13:05:22.7078341Z             {
2026-06-04T13:05:22.7079061Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.7079570Z               "line": 261
2026-06-04T13:05:22.7080001Z             },
2026-06-04T13:05:22.7080415Z             {
2026-06-04T13:05:22.7081133Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.7081587Z               "line": 276
2026-06-04T13:05:22.7082012Z             },
2026-06-04T13:05:22.7082423Z             {
2026-06-04T13:05:22.7083163Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.7083627Z               "line": 293
2026-06-04T13:05:22.7084062Z             },
2026-06-04T13:05:22.7084484Z             {
2026-06-04T13:05:22.7085194Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.7085649Z               "line": 310
2026-06-04T13:05:22.7086067Z             },
2026-06-04T13:05:22.7086496Z             {
2026-06-04T13:05:22.7087212Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.7087662Z               "line": 327
2026-06-04T13:05:22.7088081Z             },
2026-06-04T13:05:22.7088499Z             {
2026-06-04T13:05:22.7089258Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.7089724Z               "line": 366
2026-06-04T13:05:22.7090148Z             },
2026-06-04T13:05:22.7090569Z             {
2026-06-04T13:05:22.7091370Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T13:05:22.7091849Z               "line": 179
2026-06-04T13:05:22.7092268Z             },
2026-06-04T13:05:22.7092691Z             {
2026-06-04T13:05:22.7093499Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T13:05:22.7093952Z               "line": 194
2026-06-04T13:05:22.7094371Z             },
2026-06-04T13:05:22.7094778Z             {
2026-06-04T13:05:22.7095567Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T13:05:22.7096012Z               "line": 204
2026-06-04T13:05:22.7096438Z             },
2026-06-04T13:05:22.7096858Z             {
2026-06-04T13:05:22.7097652Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T13:05:22.7098111Z               "line": 259
2026-06-04T13:05:22.7098525Z             },
2026-06-04T13:05:22.7098944Z             {
2026-06-04T13:05:22.7099767Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T13:05:22.7100230Z               "line": 269
2026-06-04T13:05:22.7100817Z             },
2026-06-04T13:05:22.7101230Z             {
2026-06-04T13:05:22.7102019Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T13:05:22.7102601Z               "line": 283
2026-06-04T13:05:22.7103026Z             }
2026-06-04T13:05:22.7103436Z           ]
2026-06-04T13:05:22.7103858Z         }
2026-06-04T13:05:22.7104282Z       }
2026-06-04T13:05:22.7104691Z     },
2026-06-04T13:05:22.7105114Z     {
2026-06-04T13:05:22.7105694Z       "id": "REQ-HAZARD-PARENT-PID-PREFER",
2026-06-04T13:05:22.7106790Z       "title": "Prefer stable parent PID / broker handle over ephemeral PID (2.1)",
2026-06-04T13:05:22.7107285Z       "requiredStages": [],
2026-06-04T13:05:22.7107714Z       "stages": {
2026-06-04T13:05:22.7108147Z         "doc": {
2026-06-04T13:05:22.7108621Z           "complete": false,
2026-06-04T13:05:22.7109082Z           "evidence": []
2026-06-04T13:05:22.7109539Z         },
2026-06-04T13:05:22.7109980Z         "impl": {
2026-06-04T13:05:22.7110481Z           "complete": false,
2026-06-04T13:05:22.7110948Z           "evidence": []
2026-06-04T13:05:22.7111366Z         },
2026-06-04T13:05:22.7111808Z         "int": {
2026-06-04T13:05:22.7112287Z           "complete": false,
2026-06-04T13:05:22.7112740Z           "evidence": []
2026-06-04T13:05:22.7113155Z         },
2026-06-04T13:05:22.7113583Z         "unit": {
2026-06-04T13:05:22.7114055Z           "complete": false,
2026-06-04T13:05:22.7114512Z           "evidence": []
2026-06-04T13:05:22.7114922Z         }
2026-06-04T13:05:22.7115342Z       }
2026-06-04T13:05:22.7119443Z     },
2026-06-04T13:05:22.7119986Z     {
2026-06-04T13:05:22.7120653Z       "id": "REQ-HAZARD-PSYCHE-OUTBOUND-PROXY",
2026-06-04T13:05:22.7132843Z       "title": "Psyche outbound captured + sanitized: the live-Psyche turn driver captures stdout (never Stdio::null), and the daemon strips/re-stamps Psyche-supplied from=/target and constrains routing (reply→__REPLY_TO__ sender, notify→own user/subnet) (7.3)",
2026-06-04T13:05:22.7133582Z       "requiredStages": [
2026-06-04T13:05:22.7134026Z         "impl",
2026-06-04T13:05:22.7134451Z         "unit"
2026-06-04T13:05:22.7134870Z       ],
2026-06-04T13:05:22.7135324Z       "stages": {
2026-06-04T13:05:22.7135757Z         "doc": {
2026-06-04T13:05:22.7136227Z           "complete": false,
2026-06-04T13:05:22.7136689Z           "evidence": []
2026-06-04T13:05:22.7137100Z         },
2026-06-04T13:05:22.7137533Z         "impl": {
2026-06-04T13:05:22.7137999Z           "complete": true,
2026-06-04T13:05:22.7138451Z           "evidence": [
2026-06-04T13:05:22.7138878Z             {
2026-06-04T13:05:22.7139594Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.7140058Z               "line": 26
2026-06-04T13:05:22.7140486Z             },
2026-06-04T13:05:22.7140909Z             {
2026-06-04T13:05:22.7141561Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.7142020Z               "line": 93
2026-06-04T13:05:22.7142442Z             },
2026-06-04T13:05:22.7142872Z             {
2026-06-04T13:05:22.7143533Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.7143995Z               "line": 158
2026-06-04T13:05:22.7144423Z             },
2026-06-04T13:05:22.7144848Z             {
2026-06-04T13:05:22.7145482Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T13:05:22.7145932Z               "line": 19
2026-06-04T13:05:22.7146354Z             },
2026-06-04T13:05:22.7146779Z             {
2026-06-04T13:05:22.7147406Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T13:05:22.7147859Z               "line": 50
2026-06-04T13:05:22.7148286Z             },
2026-06-04T13:05:22.7148698Z             {
2026-06-04T13:05:22.7149333Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T13:05:22.7149789Z               "line": 18
2026-06-04T13:05:22.7150217Z             },
2026-06-04T13:05:22.7150633Z             {
2026-06-04T13:05:22.7151215Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T13:05:22.7152033Z               "line": 65
2026-06-04T13:05:22.7152449Z             },
2026-06-04T13:05:22.7152869Z             {
2026-06-04T13:05:22.7153634Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.7154088Z               "line": 51
2026-06-04T13:05:22.7154505Z             }
2026-06-04T13:05:22.7154927Z           ]
2026-06-04T13:05:22.7155355Z         },
2026-06-04T13:05:22.7155776Z         "int": {
2026-06-04T13:05:22.7156257Z           "complete": false,
2026-06-04T13:05:22.7156711Z           "evidence": []
2026-06-04T13:05:22.7157135Z         },
2026-06-04T13:05:22.7157568Z         "unit": {
2026-06-04T13:05:22.7158045Z           "complete": true,
2026-06-04T13:05:22.7158504Z           "evidence": [
2026-06-04T13:05:22.7158914Z             {
2026-06-04T13:05:22.7159612Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.7160069Z               "line": 276
2026-06-04T13:05:22.7160499Z             },
2026-06-04T13:05:22.7160930Z             {
2026-06-04T13:05:22.7161594Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.7162052Z               "line": 295
2026-06-04T13:05:22.7162483Z             },
2026-06-04T13:05:22.7162901Z             {
2026-06-04T13:05:22.7163553Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.7164013Z               "line": 323
2026-06-04T13:05:22.7164429Z             },
2026-06-04T13:05:22.7164850Z             {
2026-06-04T13:05:22.7165509Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.7165957Z               "line": 372
2026-06-04T13:05:22.7166380Z             },
2026-06-04T13:05:22.7166787Z             {
2026-06-04T13:05:22.7167449Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.7167902Z               "line": 383
2026-06-04T13:05:22.7168324Z             },
2026-06-04T13:05:22.7168744Z             {
2026-06-04T13:05:22.7169439Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.7169938Z               "line": 414
2026-06-04T13:05:22.7170369Z             },
2026-06-04T13:05:22.7170796Z             {
2026-06-04T13:05:22.7171469Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.7171930Z               "line": 425
2026-06-04T13:05:22.7172352Z             },
2026-06-04T13:05:22.7172767Z             {
2026-06-04T13:05:22.7173419Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T13:05:22.7173866Z               "line": 77
2026-06-04T13:05:22.7174295Z             },
2026-06-04T13:05:22.7174714Z             {
2026-06-04T13:05:22.7175352Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T13:05:22.7175811Z               "line": 95
2026-06-04T13:05:22.7176227Z             },
2026-06-04T13:05:22.7176653Z             {
2026-06-04T13:05:22.7177297Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T13:05:22.7177758Z               "line": 106
2026-06-04T13:05:22.7178181Z             },
2026-06-04T13:05:22.7178619Z             {
2026-06-04T13:05:22.7179337Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T13:05:22.7179793Z               "line": 117
2026-06-04T13:05:22.7180235Z             },
2026-06-04T13:05:22.7180650Z             {
2026-06-04T13:05:22.7181295Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T13:05:22.7181760Z               "line": 124
2026-06-04T13:05:22.7182182Z             },
2026-06-04T13:05:22.7182608Z             {
2026-06-04T13:05:22.7183251Z               "path": "crates/spt-live/src/outbound.rs",
2026-06-04T13:05:22.7183713Z               "line": 137
2026-06-04T13:05:22.7184129Z             },
2026-06-04T13:05:22.7184556Z             {
2026-06-04T13:05:22.7185148Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T13:05:22.7185607Z               "line": 106
2026-06-04T13:05:22.7186036Z             },
2026-06-04T13:05:22.7186449Z             {
2026-06-04T13:05:22.7187037Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T13:05:22.7187679Z               "line": 118
2026-06-04T13:05:22.7188113Z             },
2026-06-04T13:05:22.7188537Z             {
2026-06-04T13:05:22.7189330Z               "path": "crates/spt-proto/src/event.rs",
2026-06-04T13:05:22.7189790Z               "line": 317
2026-06-04T13:05:22.7190203Z             }
2026-06-04T13:05:22.7190627Z           ]
2026-06-04T13:05:22.7191033Z         }
2026-06-04T13:05:22.7191457Z       }
2026-06-04T13:05:22.7191879Z     },
2026-06-04T13:05:22.7192292Z     {
2026-06-04T13:05:22.7192896Z       "id": "REQ-HAZARD-REGISTRY-CONCURRENT",
2026-06-04T13:05:22.7194426Z       "title": "Concurrent SQLite openers (registry/spool) must not fail with 'database is locked' (4.7)",
2026-06-04T13:05:22.7194913Z       "requiredStages": [
2026-06-04T13:05:22.7195339Z         "impl",
2026-06-04T13:05:22.7195765Z         "unit"
2026-06-04T13:05:22.7196190Z       ],
2026-06-04T13:05:22.7196616Z       "stages": {
2026-06-04T13:05:22.7197046Z         "doc": {
2026-06-04T13:05:22.7197521Z           "complete": true,
2026-06-04T13:05:22.7197973Z           "evidence": [
2026-06-04T13:05:22.7198389Z             {
2026-06-04T13:05:22.7198961Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T13:05:22.7199475Z               "line": 137
2026-06-04T13:05:22.7199895Z             }
2026-06-04T13:05:22.7200320Z           ]
2026-06-04T13:05:22.7200732Z         },
2026-06-04T13:05:22.7201163Z         "impl": {
2026-06-04T13:05:22.7201624Z           "complete": true,
2026-06-04T13:05:22.7202080Z           "evidence": [
2026-06-04T13:05:22.7202506Z             {
2026-06-04T13:05:22.7203084Z               "path": "crates/spt-store/src/db.rs",
2026-06-04T13:05:22.7203540Z               "line": 29
2026-06-04T13:05:22.7203963Z             },
2026-06-04T13:05:22.7204387Z             {
2026-06-04T13:05:22.7204991Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.7205491Z               "line": 101
2026-06-04T13:05:22.7205916Z             },
2026-06-04T13:05:22.7206329Z             {
2026-06-04T13:05:22.7206998Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7207440Z               "line": 30
2026-06-04T13:05:22.7207875Z             },
2026-06-04T13:05:22.7208284Z             {
2026-06-04T13:05:22.7208895Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.7209400Z               "line": 48
2026-06-04T13:05:22.7209827Z             }
2026-06-04T13:05:22.7210271Z           ]
2026-06-04T13:05:22.7215480Z         },
2026-06-04T13:05:22.7216044Z         "int": {
2026-06-04T13:05:22.7216525Z           "complete": false,
2026-06-04T13:05:22.7216992Z           "evidence": []
2026-06-04T13:05:22.7217420Z         },
2026-06-04T13:05:22.7217851Z         "unit": {
2026-06-04T13:05:22.7218319Z           "complete": true,
2026-06-04T13:05:22.7218774Z           "evidence": [
2026-06-04T13:05:22.7219280Z             {
2026-06-04T13:05:22.7220310Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7220780Z               "line": 152
2026-06-04T13:05:22.7221260Z             }
2026-06-04T13:05:22.7221677Z           ]
2026-06-04T13:05:22.7222105Z         }
2026-06-04T13:05:22.7222534Z       }
2026-06-04T13:05:22.7222946Z     },
2026-06-04T13:05:22.7223354Z     {
2026-06-04T13:05:22.7223964Z       "id": "REQ-HAZARD-REGISTRY-DIR-CREATE",
2026-06-04T13:05:22.7226145Z       "title": "SQLite store opens create their parent dir themselves — a fresh-home registry op must not SQLITE_CANTOPEN (4.9)",
2026-06-04T13:05:22.7226635Z       "requiredStages": [
2026-06-04T13:05:22.7227060Z         "doc",
2026-06-04T13:05:22.7227479Z         "impl",
2026-06-04T13:05:22.7227907Z         "unit"
2026-06-04T13:05:22.7228316Z       ],
2026-06-04T13:05:22.7228756Z       "stages": {
2026-06-04T13:05:22.7229238Z         "doc": {
2026-06-04T13:05:22.7229712Z           "complete": true,
2026-06-04T13:05:22.7230170Z           "evidence": [
2026-06-04T13:05:22.7230583Z             {
2026-06-04T13:05:22.7231152Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T13:05:22.7231886Z               "line": 149
2026-06-04T13:05:22.7232319Z             }
2026-06-04T13:05:22.7232748Z           ]
2026-06-04T13:05:22.7233307Z         },
2026-06-04T13:05:22.7233744Z         "impl": {
2026-06-04T13:05:22.7234209Z           "complete": true,
2026-06-04T13:05:22.7234665Z           "evidence": [
2026-06-04T13:05:22.7235079Z             {
2026-06-04T13:05:22.7235738Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7236189Z               "line": 22
2026-06-04T13:05:22.7236606Z             }
2026-06-04T13:05:22.7237023Z           ]
2026-06-04T13:05:22.7237432Z         },
2026-06-04T13:05:22.7237859Z         "int": {
2026-06-04T13:05:22.7238327Z           "complete": false,
2026-06-04T13:05:22.7238793Z           "evidence": []
2026-06-04T13:05:22.7239255Z         },
2026-06-04T13:05:22.7239689Z         "unit": {
2026-06-04T13:05:22.7240160Z           "complete": true,
2026-06-04T13:05:22.7240602Z           "evidence": [
2026-06-04T13:05:22.7241044Z             {
2026-06-04T13:05:22.7241683Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7242145Z               "line": 257
2026-06-04T13:05:22.7242585Z             }
2026-06-04T13:05:22.7242996Z           ]
2026-06-04T13:05:22.7243414Z         }
2026-06-04T13:05:22.7243825Z       }
2026-06-04T13:05:22.7244237Z     },
2026-06-04T13:05:22.7244641Z     {
2026-06-04T13:05:22.7245267Z       "id": "REQ-HAZARD-REGISTRY-EPOCH-LEASE",
2026-06-04T13:05:22.7247773Z       "title": "Registry merge ordered by per-node monotonic epoch, never wall-clock — a stale Active can't clobber a newer Offline (4.8, red-team #8)",
2026-06-04T13:05:22.7248260Z       "requiredStages": [
2026-06-04T13:05:22.7248694Z         "impl",
2026-06-04T13:05:22.7249112Z         "unit"
2026-06-04T13:05:22.7249578Z       ],
2026-06-04T13:05:22.7250023Z       "stages": {
2026-06-04T13:05:22.7250445Z         "doc": {
2026-06-04T13:05:22.7250915Z           "complete": true,
2026-06-04T13:05:22.7251362Z           "evidence": [
2026-06-04T13:05:22.7251812Z             {
2026-06-04T13:05:22.7252373Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T13:05:22.7252835Z               "line": 143
2026-06-04T13:05:22.7253268Z             }
2026-06-04T13:05:22.7253680Z           ]
2026-06-04T13:05:22.7254101Z         },
2026-06-04T13:05:22.7254526Z         "impl": {
2026-06-04T13:05:22.7254997Z           "complete": true,
2026-06-04T13:05:22.7255442Z           "evidence": [
2026-06-04T13:05:22.7255867Z             {
2026-06-04T13:05:22.7256529Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.7256976Z               "line": 124
2026-06-04T13:05:22.7257402Z             },
2026-06-04T13:05:22.7257819Z             {
2026-06-04T13:05:22.7258433Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T13:05:22.7258877Z               "line": 15
2026-06-04T13:05:22.7259395Z             }
2026-06-04T13:05:22.7259827Z           ]
2026-06-04T13:05:22.7260245Z         },
2026-06-04T13:05:22.7260696Z         "int": {
2026-06-04T13:05:22.7261164Z           "complete": false,
2026-06-04T13:05:22.7261622Z           "evidence": []
2026-06-04T13:05:22.7262049Z         },
2026-06-04T13:05:22.7262483Z         "unit": {
2026-06-04T13:05:22.7262960Z           "complete": true,
2026-06-04T13:05:22.7263416Z           "evidence": [
2026-06-04T13:05:22.7263843Z             {
2026-06-04T13:05:22.7264540Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-04T13:05:22.7264995Z               "line": 87
2026-06-04T13:05:22.7265412Z             },
2026-06-04T13:05:22.7265835Z             {
2026-06-04T13:05:22.7266503Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.7266979Z               "line": 515
2026-06-04T13:05:22.7267752Z             },
2026-06-04T13:05:22.7268370Z             {
2026-06-04T13:05:22.7269987Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.7271809Z               "line": 534
2026-06-04T13:05:22.7272999Z             },
2026-06-04T13:05:22.7274391Z             {
2026-06-04T13:05:22.7275941Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T13:05:22.7278131Z               "line": 148
2026-06-04T13:05:22.7279633Z             },
2026-06-04T13:05:22.7280854Z             {
2026-06-04T13:05:22.7282230Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T13:05:22.7283967Z               "line": 74
2026-06-04T13:05:22.7285201Z             },
2026-06-04T13:05:22.7286364Z             {
2026-06-04T13:05:22.7287642Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T13:05:22.7289349Z               "line": 88
2026-06-04T13:05:22.7290596Z             },
2026-06-04T13:05:22.7291679Z             {
2026-06-04T13:05:22.7292939Z               "path": "crates/spt-store/src/epoch.rs",
2026-06-04T13:05:22.7294629Z               "line": 104
2026-06-04T13:05:22.7295942Z             }
2026-06-04T13:05:22.7297075Z           ]
2026-06-04T13:05:22.7298160Z         }
2026-06-04T13:05:22.7299338Z       }
2026-06-04T13:05:22.7306507Z     },
2026-06-04T13:05:22.7307554Z     {
2026-06-04T13:05:22.7308705Z       "id": "REQ-HAZARD-REGISTRY-STALE-CLEAN",
2026-06-04T13:05:22.7311058Z       "title": "Stale registry entries degrade to fallback, never hard-fail (4.3)",
2026-06-04T13:05:22.7313243Z       "requiredStages": [
2026-06-04T13:05:22.7314429Z         "impl",
2026-06-04T13:05:22.7315463Z         "unit"
2026-06-04T13:05:22.7316477Z       ],
2026-06-04T13:05:22.7317442Z       "stages": {
2026-06-04T13:05:22.7318504Z         "doc": {
2026-06-04T13:05:22.7319620Z           "complete": false,
2026-06-04T13:05:22.7320893Z           "evidence": []
2026-06-04T13:05:22.7322043Z         },
2026-06-04T13:05:22.7323017Z         "impl": {
2026-06-04T13:05:22.7324112Z           "complete": true,
2026-06-04T13:05:22.7325342Z           "evidence": [
2026-06-04T13:05:22.7326462Z             {
2026-06-04T13:05:22.7327648Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T13:05:22.7329255Z               "line": 15
2026-06-04T13:05:22.7330432Z             },
2026-06-04T13:05:22.7331447Z             {
2026-06-04T13:05:22.7332663Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7334291Z               "line": 55
2026-06-04T13:05:22.7335438Z             },
2026-06-04T13:05:22.7336442Z             {
2026-06-04T13:05:22.7337661Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7339322Z               "line": 62
2026-06-04T13:05:22.7340468Z             },
2026-06-04T13:05:22.7341474Z             {
2026-06-04T13:05:22.7342682Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7344281Z               "line": 107
2026-06-04T13:05:22.7345423Z             },
2026-06-04T13:05:22.7346431Z             {
2026-06-04T13:05:22.7347645Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7349316Z               "line": 128
2026-06-04T13:05:22.7350468Z             }
2026-06-04T13:05:22.7351459Z           ]
2026-06-04T13:05:22.7352446Z         },
2026-06-04T13:05:22.7353411Z         "int": {
2026-06-04T13:05:22.7354474Z           "complete": false,
2026-06-04T13:05:22.7355736Z           "evidence": []
2026-06-04T13:05:22.7356921Z         },
2026-06-04T13:05:22.7357896Z         "unit": {
2026-06-04T13:05:22.7358988Z           "complete": true,
2026-06-04T13:05:22.7360255Z           "evidence": [
2026-06-04T13:05:22.7361379Z             {
2026-06-04T13:05:22.7362572Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T13:05:22.7364144Z               "line": 113
2026-06-04T13:05:22.7365300Z             },
2026-06-04T13:05:22.7366304Z             {
2026-06-04T13:05:22.7367474Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T13:05:22.7369042Z               "line": 119
2026-06-04T13:05:22.7370233Z             },
2026-06-04T13:05:22.7371229Z             {
2026-06-04T13:05:22.7372393Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T13:05:22.7373958Z               "line": 130
2026-06-04T13:05:22.7375555Z             },
2026-06-04T13:05:22.7376559Z             {
2026-06-04T13:05:22.7377782Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7379642Z               "line": 183
2026-06-04T13:05:22.7380811Z             },
2026-06-04T13:05:22.7381818Z             {
2026-06-04T13:05:22.7383027Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7384626Z               "line": 193
2026-06-04T13:05:22.7385775Z             },
2026-06-04T13:05:22.7386791Z             {
2026-06-04T13:05:22.7388009Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7389657Z               "line": 237
2026-06-04T13:05:22.7390820Z             },
2026-06-04T13:05:22.7391830Z             {
2026-06-04T13:05:22.7393051Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7394654Z               "line": 249
2026-06-04T13:05:22.7395811Z             },
2026-06-04T13:05:22.7396815Z             {
2026-06-04T13:05:22.7398033Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.7399702Z               "line": 275
2026-06-04T13:05:22.7400870Z             }
2026-06-04T13:05:22.7401879Z           ]
2026-06-04T13:05:22.7402838Z         }
2026-06-04T13:05:22.7403790Z       }
2026-06-04T13:05:22.7404724Z     },
2026-06-04T13:05:22.7410258Z     {
2026-06-04T13:05:22.7411532Z       "id": "REQ-HAZARD-RESTART-IDEMPOTENT",
2026-06-04T13:05:22.7414215Z       "title": "Idempotent/exactly-once delivery across brain restart at every broker boundary (codex #14)",
2026-06-04T13:05:22.7416921Z       "requiredStages": [
2026-06-04T13:05:22.7418120Z         "impl",
2026-06-04T13:05:22.7419143Z         "unit",
2026-06-04T13:05:22.7420218Z         "int"
2026-06-04T13:05:22.7421211Z       ],
2026-06-04T13:05:22.7422172Z       "stages": {
2026-06-04T13:05:22.7423213Z         "doc": {
2026-06-04T13:05:22.7424284Z           "complete": false,
2026-06-04T13:05:22.7425533Z           "evidence": []
2026-06-04T13:05:22.7426677Z         },
2026-06-04T13:05:22.7427691Z         "impl": {
2026-06-04T13:05:22.7428779Z           "complete": true,
2026-06-04T13:05:22.7430033Z           "evidence": [
2026-06-04T13:05:22.7431164Z             {
2026-06-04T13:05:22.7432352Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T13:05:22.7433931Z               "line": 246
2026-06-04T13:05:22.7435076Z             },
2026-06-04T13:05:22.7436069Z             {
2026-06-04T13:05:22.7437265Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T13:05:22.7438835Z               "line": 506
2026-06-04T13:05:22.7440024Z             },
2026-06-04T13:05:22.7441030Z             {
2026-06-04T13:05:22.7442213Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T13:05:22.7443781Z               "line": 529
2026-06-04T13:05:22.7444929Z             },
2026-06-04T13:05:22.7445919Z             {
2026-06-04T13:05:22.7447110Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T13:05:22.7448677Z               "line": 553
2026-06-04T13:05:22.7449886Z             },
2026-06-04T13:05:22.7450885Z             {
2026-06-04T13:05:22.7452082Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T13:05:22.7453690Z               "line": 463
2026-06-04T13:05:22.7454829Z             },
2026-06-04T13:05:22.7455824Z             {
2026-06-04T13:05:22.7457031Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T13:05:22.7458628Z               "line": 544
2026-06-04T13:05:22.7459802Z             },
2026-06-04T13:05:22.7460800Z             {
2026-06-04T13:05:22.7462001Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T13:05:22.7463598Z               "line": 588
2026-06-04T13:05:22.7464739Z             },
2026-06-04T13:05:22.7465736Z             {
2026-06-04T13:05:22.7466928Z               "path": "crates/spt-daemon/src/broker.rs",
2026-06-04T13:05:22.7468529Z               "line": 631
2026-06-04T13:05:22.7469701Z             },
2026-06-04T13:05:22.7470701Z             {
2026-06-04T13:05:22.7471904Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T13:05:22.7473777Z               "line": 46
2026-06-04T13:05:22.7474917Z             },
2026-06-04T13:05:22.7476065Z             {
2026-06-04T13:05:22.7477274Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T13:05:22.7478868Z               "line": 160
2026-06-04T13:05:22.7480056Z             },
2026-06-04T13:05:22.7481059Z             {
2026-06-04T13:05:22.7482233Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T13:05:22.7483780Z               "line": 71
2026-06-04T13:05:22.7484914Z             },
2026-06-04T13:05:22.7485906Z             {
2026-06-04T13:05:22.7487075Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.7488630Z               "line": 128
2026-06-04T13:05:22.7489814Z             },
2026-06-04T13:05:22.7490816Z             {
2026-06-04T13:05:22.7491993Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.7493561Z               "line": 174
2026-06-04T13:05:22.7494733Z             }
2026-06-04T13:05:22.7495719Z           ]
2026-06-04T13:05:22.7496669Z         },
2026-06-04T13:05:22.7497634Z         "int": {
2026-06-04T13:05:22.7498730Z           "complete": true,
2026-06-04T13:05:22.7499995Z           "evidence": [
2026-06-04T13:05:22.7501107Z             {
2026-06-04T13:05:22.7502377Z               "path": "crates/spt-daemon/tests/idempotent.rs",
2026-06-04T13:05:22.7504055Z               "line": 27
2026-06-04T13:05:22.7505182Z             },
2026-06-04T13:05:22.7506178Z             {
2026-06-04T13:05:22.7507436Z               "path": "crates/spt-daemon/tests/netbroker.rs",
2026-06-04T13:05:22.7509097Z               "line": 125
2026-06-04T13:05:22.7510289Z             },
2026-06-04T13:05:22.7511283Z             {
2026-06-04T13:05:22.7516558Z               "path": "crates/spt-daemon/tests/netstream.rs",
2026-06-04T13:05:22.7518334Z               "line": 189
2026-06-04T13:05:22.7519568Z             }
2026-06-04T13:05:22.7520565Z           ]
2026-06-04T13:05:22.7521564Z         },
2026-06-04T13:05:22.7522529Z         "unit": {
2026-06-04T13:05:22.7523629Z           "complete": true,
2026-06-04T13:05:22.7524847Z           "evidence": [
2026-06-04T13:05:22.7525974Z             {
2026-06-04T13:05:22.7527177Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T13:05:22.7528768Z               "line": 282
2026-06-04T13:05:22.7529956Z             },
2026-06-04T13:05:22.7530947Z             {
2026-06-04T13:05:22.7532150Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T13:05:22.7533747Z               "line": 300
2026-06-04T13:05:22.7534890Z             },
2026-06-04T13:05:22.7535893Z             {
2026-06-04T13:05:22.7537085Z               "path": "crates/spt-daemon/src/effect.rs",
2026-06-04T13:05:22.7538669Z               "line": 318
2026-06-04T13:05:22.7539851Z             },
2026-06-04T13:05:22.7540854Z             {
2026-06-04T13:05:22.7542069Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T13:05:22.7543679Z               "line": 221
2026-06-04T13:05:22.7544835Z             },
2026-06-04T13:05:22.7545837Z             {
2026-06-04T13:05:22.7547051Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T13:05:22.7548674Z               "line": 204
2026-06-04T13:05:22.7549860Z             },
2026-06-04T13:05:22.7550857Z             {
2026-06-04T13:05:22.7552040Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T13:05:22.7553622Z               "line": 182
2026-06-04T13:05:22.7554776Z             },
2026-06-04T13:05:22.7555775Z             {
2026-06-04T13:05:22.7556940Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.7558490Z               "line": 441
2026-06-04T13:05:22.7559669Z             },
2026-06-04T13:05:22.7560664Z             {
2026-06-04T13:05:22.7561826Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.7563384Z               "line": 465
2026-06-04T13:05:22.7564530Z             }
2026-06-04T13:05:22.7565512Z           ]
2026-06-04T13:05:22.7566727Z         }
2026-06-04T13:05:22.7567665Z       }
2026-06-04T13:05:22.7568590Z     },
2026-06-04T13:05:22.7569558Z     {
2026-06-04T13:05:22.7570838Z       "id": "REQ-HAZARD-SINGLE-PATH-SOURCE",
2026-06-04T13:05:22.7572971Z       "title": "Single path/registry source of truth; no layout ambiguity (6.1)",
2026-06-04T13:05:22.7575097Z       "requiredStages": [
2026-06-04T13:05:22.7576286Z         "impl",
2026-06-04T13:05:22.7577302Z         "unit"
2026-06-04T13:05:22.7578304Z       ],
2026-06-04T13:05:22.7579323Z       "stages": {
2026-06-04T13:05:22.7580366Z         "doc": {
2026-06-04T13:05:22.7581441Z           "complete": false,
2026-06-04T13:05:22.7582676Z           "evidence": []
2026-06-04T13:05:22.7583805Z         },
2026-06-04T13:05:22.7584775Z         "impl": {
2026-06-04T13:05:22.7585854Z           "complete": true,
2026-06-04T13:05:22.7587061Z           "evidence": [
2026-06-04T13:05:22.7588171Z             {
2026-06-04T13:05:22.7589447Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:22.7591124Z               "line": 56
2026-06-04T13:05:22.7592247Z             },
2026-06-04T13:05:22.7593240Z             {
2026-06-04T13:05:22.7594511Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:22.7596163Z               "line": 63
2026-06-04T13:05:22.7597286Z             },
2026-06-04T13:05:22.7598284Z             {
2026-06-04T13:05:22.7599512Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7601139Z               "line": 33
2026-06-04T13:05:22.7602290Z             },
2026-06-04T13:05:22.7603288Z             {
2026-06-04T13:05:22.7604471Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7606037Z               "line": 61
2026-06-04T13:05:22.7607178Z             },
2026-06-04T13:05:22.7608187Z             {
2026-06-04T13:05:22.7609426Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7610996Z               "line": 70
2026-06-04T13:05:22.7612134Z             },
2026-06-04T13:05:22.7613150Z             {
2026-06-04T13:05:22.7614326Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7615892Z               "line": 79
2026-06-04T13:05:22.7621354Z             },
2026-06-04T13:05:22.7622447Z             {
2026-06-04T13:05:22.7623620Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7625191Z               "line": 88
2026-06-04T13:05:22.7626319Z             },
2026-06-04T13:05:22.7627319Z             {
2026-06-04T13:05:22.7628492Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7630099Z               "line": 97
2026-06-04T13:05:22.7631237Z             },
2026-06-04T13:05:22.7632232Z             {
2026-06-04T13:05:22.7633407Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7634963Z               "line": 105
2026-06-04T13:05:22.7636115Z             },
2026-06-04T13:05:22.7637116Z             {
2026-06-04T13:05:22.7638290Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7639931Z               "line": 114
2026-06-04T13:05:22.7641089Z             },
2026-06-04T13:05:22.7642081Z             {
2026-06-04T13:05:22.7643273Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7644827Z               "line": 123
2026-06-04T13:05:22.7645967Z             },
2026-06-04T13:05:22.7646956Z             {
2026-06-04T13:05:22.7648128Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7649719Z               "line": 130
2026-06-04T13:05:22.7650878Z             },
2026-06-04T13:05:22.7651873Z             {
2026-06-04T13:05:22.7653061Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7654616Z               "line": 137
2026-06-04T13:05:22.7655757Z             },
2026-06-04T13:05:22.7656752Z             {
2026-06-04T13:05:22.7657920Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7659518Z               "line": 145
2026-06-04T13:05:22.7660656Z             },
2026-06-04T13:05:22.7662018Z             {
2026-06-04T13:05:22.7663196Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7664755Z               "line": 154
2026-06-04T13:05:22.7666042Z             },
2026-06-04T13:05:22.7667039Z             {
2026-06-04T13:05:22.7668211Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7669826Z               "line": 221
2026-06-04T13:05:22.7670977Z             },
2026-06-04T13:05:22.7671974Z             {
2026-06-04T13:05:22.7673142Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7674707Z               "line": 233
2026-06-04T13:05:22.7675858Z             },
2026-06-04T13:05:22.7676852Z             {
2026-06-04T13:05:22.7678023Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7679628Z               "line": 320
2026-06-04T13:05:22.7680773Z             }
2026-06-04T13:05:22.7681763Z           ]
2026-06-04T13:05:22.7682722Z         },
2026-06-04T13:05:22.7683674Z         "int": {
2026-06-04T13:05:22.7684768Z           "complete": false,
2026-06-04T13:05:22.7686012Z           "evidence": []
2026-06-04T13:05:22.7687149Z         },
2026-06-04T13:05:22.7688128Z         "unit": {
2026-06-04T13:05:22.7689244Z           "complete": true,
2026-06-04T13:05:22.7690456Z           "evidence": [
2026-06-04T13:05:22.7691576Z             {
2026-06-04T13:05:22.7692740Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7694286Z               "line": 390
2026-06-04T13:05:22.7695426Z             },
2026-06-04T13:05:22.7696423Z             {
2026-06-04T13:05:22.7697606Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7699204Z               "line": 416
2026-06-04T13:05:22.7700343Z             },
2026-06-04T13:05:22.7701341Z             {
2026-06-04T13:05:22.7702515Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7704069Z               "line": 429
2026-06-04T13:05:22.7705209Z             },
2026-06-04T13:05:22.7706208Z             {
2026-06-04T13:05:22.7707389Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.7708941Z               "line": 471
2026-06-04T13:05:22.7710145Z             }
2026-06-04T13:05:22.7711159Z           ]
2026-06-04T13:05:22.7712140Z         }
2026-06-04T13:05:22.7713081Z       }
2026-06-04T13:05:22.7714008Z     },
2026-06-04T13:05:22.7714936Z     {
2026-06-04T13:05:22.7715980Z       "id": "REQ-HAZARD-SOFT-CLEANUP",
2026-06-04T13:05:22.7718041Z       "title": "Soft-cleanup preserves state, removes only the ready marker (6.2)",
2026-06-04T13:05:22.7720315Z       "requiredStages": [
2026-06-04T13:05:22.7725878Z         "impl",
2026-06-04T13:05:22.7726983Z         "unit"
2026-06-04T13:05:22.7727980Z       ],
2026-06-04T13:05:22.7728932Z       "stages": {
2026-06-04T13:05:22.7730069Z         "doc": {
2026-06-04T13:05:22.7731153Z           "complete": false,
2026-06-04T13:05:22.7732400Z           "evidence": []
2026-06-04T13:05:22.7733542Z         },
2026-06-04T13:05:22.7734512Z         "impl": {
2026-06-04T13:05:22.7735630Z           "complete": true,
2026-06-04T13:05:22.7736848Z           "evidence": [
2026-06-04T13:05:22.7737953Z             {
2026-06-04T13:05:22.7739136Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T13:05:22.7740706Z               "line": 107
2026-06-04T13:05:22.7741855Z             },
2026-06-04T13:05:22.7742861Z             {
2026-06-04T13:05:22.7744058Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.7745645Z               "line": 118
2026-06-04T13:05:22.7746770Z             }
2026-06-04T13:05:22.7747751Z           ]
2026-06-04T13:05:22.7748701Z         },
2026-06-04T13:05:22.7749688Z         "int": {
2026-06-04T13:05:22.7750759Z           "complete": false,
2026-06-04T13:05:22.7752006Z           "evidence": []
2026-06-04T13:05:22.7753138Z         },
2026-06-04T13:05:22.7754107Z         "unit": {
2026-06-04T13:05:22.7755183Z           "complete": true,
2026-06-04T13:05:22.7756409Z           "evidence": [
2026-06-04T13:05:22.7757511Z             {
2026-06-04T13:05:22.7758953Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T13:05:22.7760600Z               "line": 225
2026-06-04T13:05:22.7761911Z             },
2026-06-04T13:05:22.7762908Z             {
2026-06-04T13:05:22.7764106Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.7765689Z               "line": 345
2026-06-04T13:05:22.7766830Z             },
2026-06-04T13:05:22.7767825Z             {
2026-06-04T13:05:22.7769019Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.7770657Z               "line": 355
2026-06-04T13:05:22.7771801Z             }
2026-06-04T13:05:22.7772785Z           ]
2026-06-04T13:05:22.7773740Z         }
2026-06-04T13:05:22.7774677Z       }
2026-06-04T13:05:22.7775614Z     },
2026-06-04T13:05:22.7776554Z     {
2026-06-04T13:05:22.7777633Z       "id": "REQ-HAZARD-STALE-INDEX-LOCK",
2026-06-04T13:05:22.7779422Z       "title": "Sweep stale lockfiles on daemon boot (1.3)",
2026-06-04T13:05:22.7781138Z       "requiredStages": [],
2026-06-04T13:05:22.7782377Z       "stages": {
2026-06-04T13:05:22.7783422Z         "doc": {
2026-06-04T13:05:22.7784504Z           "complete": false,
2026-06-04T13:05:22.7785760Z           "evidence": []
2026-06-04T13:05:22.7786897Z         },
2026-06-04T13:05:22.7787865Z         "impl": {
2026-06-04T13:05:22.7788951Z           "complete": false,
2026-06-04T13:05:22.7790227Z           "evidence": []
2026-06-04T13:05:22.7791361Z         },
2026-06-04T13:05:22.7792329Z         "int": {
2026-06-04T13:05:22.7793397Z           "complete": false,
2026-06-04T13:05:22.7794634Z           "evidence": []
2026-06-04T13:05:22.7795766Z         },
2026-06-04T13:05:22.7796725Z         "unit": {
2026-06-04T13:05:22.7797824Z           "complete": false,
2026-06-04T13:05:22.7799073Z           "evidence": []
2026-06-04T13:05:22.7800255Z         }
2026-06-04T13:05:22.7801188Z       }
2026-06-04T13:05:22.7802113Z     },
2026-06-04T13:05:22.7803041Z     {
2026-06-04T13:05:22.7804184Z       "id": "REQ-HAZARD-STALE-SIGNOFF-SENTINEL",
2026-06-04T13:05:22.7806253Z       "title": "Stale signoff sentinel does not kill a fresh start (3.2)",
2026-06-04T13:05:22.7808249Z       "requiredStages": [
2026-06-04T13:05:22.7809471Z         "impl",
2026-06-04T13:05:22.7810500Z         "unit"
2026-06-04T13:05:22.7811503Z       ],
2026-06-04T13:05:22.7812467Z       "stages": {
2026-06-04T13:05:22.7813506Z         "doc": {
2026-06-04T13:05:22.7814577Z           "complete": false,
2026-06-04T13:05:22.7815827Z           "evidence": []
2026-06-04T13:05:22.7816960Z         },
2026-06-04T13:05:22.7817931Z         "impl": {
2026-06-04T13:05:22.7819011Z           "complete": true,
2026-06-04T13:05:22.7824443Z           "evidence": [
2026-06-04T13:05:22.7825716Z             {
2026-06-04T13:05:22.7826959Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.7828579Z               "line": 424
2026-06-04T13:05:22.7829880Z             },
2026-06-04T13:05:22.7831647Z             {
2026-06-04T13:05:22.7832874Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T13:05:22.7834511Z               "line": 28
2026-06-04T13:05:22.7835643Z             }
2026-06-04T13:05:22.7836649Z           ]
2026-06-04T13:05:22.7837600Z         },
2026-06-04T13:05:22.7838556Z         "int": {
2026-06-04T13:05:22.7839687Z           "complete": false,
2026-06-04T13:05:22.7840933Z           "evidence": []
2026-06-04T13:05:22.7842066Z         },
2026-06-04T13:05:22.7843029Z         "unit": {
2026-06-04T13:05:22.7844107Z           "complete": true,
2026-06-04T13:05:22.7845307Z           "evidence": [
2026-06-04T13:05:22.7846416Z             {
2026-06-04T13:05:22.7847592Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T13:05:22.7849194Z               "line": 200
2026-06-04T13:05:22.7850342Z             }
2026-06-04T13:05:22.7851330Z           ]
2026-06-04T13:05:22.7852285Z         }
2026-06-04T13:05:22.7853239Z       }
2026-06-04T13:05:22.7854169Z     },
2026-06-04T13:05:22.7855099Z     {
2026-06-04T13:05:22.7856496Z       "id": "REQ-HAZARD-STDIN-SESSION-ID",
2026-06-04T13:05:22.7858230Z       "title": "Stdin session_id precedence over env (2.2)",
2026-06-04T13:05:22.7860160Z       "requiredStages": [],
2026-06-04T13:05:22.7861372Z       "stages": {
2026-06-04T13:05:22.7862407Z         "doc": {
2026-06-04T13:05:22.7863485Z           "complete": false,
2026-06-04T13:05:22.7864717Z           "evidence": []
2026-06-04T13:05:22.7865855Z         },
2026-06-04T13:05:22.7866829Z         "impl": {
2026-06-04T13:05:22.7867907Z           "complete": false,
2026-06-04T13:05:22.7869146Z           "evidence": []
2026-06-04T13:05:22.7870318Z         },
2026-06-04T13:05:22.7871275Z         "int": {
2026-06-04T13:05:22.7872349Z           "complete": false,
2026-06-04T13:05:22.7873609Z           "evidence": []
2026-06-04T13:05:22.7874734Z         },
2026-06-04T13:05:22.7875687Z         "unit": {
2026-06-04T13:05:22.7876760Z           "complete": false,
2026-06-04T13:05:22.7878007Z           "evidence": []
2026-06-04T13:05:22.7879144Z         }
2026-06-04T13:05:22.7880159Z       }
2026-06-04T13:05:22.7881092Z     },
2026-06-04T13:05:22.7882023Z     {
2026-06-04T13:05:22.7883156Z       "id": "REQ-HAZARD-SUBPROCESS-TIMEOUT",
2026-06-04T13:05:22.7885144Z       "title": "Every harness/git subprocess has a timeout (5.3)",
2026-06-04T13:05:22.7886980Z       "requiredStages": [
2026-06-04T13:05:22.7888161Z         "impl",
2026-06-04T13:05:22.7889219Z         "unit"
2026-06-04T13:05:22.7890221Z       ],
2026-06-04T13:05:22.7891170Z       "stages": {
2026-06-04T13:05:22.7892209Z         "doc": {
2026-06-04T13:05:22.7893294Z           "complete": false,
2026-06-04T13:05:22.7894529Z           "evidence": []
2026-06-04T13:05:22.7895657Z         },
2026-06-04T13:05:22.7896614Z         "impl": {
2026-06-04T13:05:22.7897682Z           "complete": true,
2026-06-04T13:05:22.7898897Z           "evidence": [
2026-06-04T13:05:22.7900045Z             {
2026-06-04T13:05:22.7901193Z               "path": "crates/spt-live/src/turn.rs",
2026-06-04T13:05:22.7902753Z               "line": 19
2026-06-04T13:05:22.7903894Z             },
2026-06-04T13:05:22.7904886Z             {
2026-06-04T13:05:22.7906101Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T13:05:22.7907722Z               "line": 325
2026-06-04T13:05:22.7908150Z             },
2026-06-04T13:05:22.7908561Z             {
2026-06-04T13:05:22.7909254Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T13:05:22.7909703Z               "line": 361
2026-06-04T13:05:22.7910130Z             },
2026-06-04T13:05:22.7910551Z             {
2026-06-04T13:05:22.7911173Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T13:05:22.7911627Z               "line": 15
2026-06-04T13:05:22.7912049Z             },
2026-06-04T13:05:22.7912473Z             {
2026-06-04T13:05:22.7913083Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T13:05:22.7913535Z               "line": 48
2026-06-04T13:05:22.7913952Z             },
2026-06-04T13:05:22.7914375Z             {
2026-06-04T13:05:22.7915007Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T13:05:22.7915451Z               "line": 106
2026-06-04T13:05:22.7915891Z             }
2026-06-04T13:05:22.7916302Z           ]
2026-06-04T13:05:22.7916722Z         },
2026-06-04T13:05:22.7917145Z         "int": {
2026-06-04T13:05:22.7917619Z           "complete": false,
2026-06-04T13:05:22.7918080Z           "evidence": []
2026-06-04T13:05:22.7918490Z         },
2026-06-04T13:05:22.7923590Z         "unit": {
2026-06-04T13:05:22.7924175Z           "complete": true,
2026-06-04T13:05:22.7924644Z           "evidence": [
2026-06-04T13:05:22.7925064Z             {
2026-06-04T13:05:22.7925737Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T13:05:22.7926199Z               "line": 453
2026-06-04T13:05:22.7926624Z             },
2026-06-04T13:05:22.7927044Z             {
2026-06-04T13:05:22.7927656Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T13:05:22.7928112Z               "line": 149
2026-06-04T13:05:22.7928831Z             },
2026-06-04T13:05:22.7929358Z             {
2026-06-04T13:05:22.7930021Z               "path": "crates/spt-store/src/gitrun.rs",
2026-06-04T13:05:22.7930701Z               "line": 156
2026-06-04T13:05:22.7931136Z             }
2026-06-04T13:05:22.7931546Z           ]
2026-06-04T13:05:22.7931963Z         }
2026-06-04T13:05:22.7932368Z       }
2026-06-04T13:05:22.7932777Z     },
2026-06-04T13:05:22.7933189Z     {
2026-06-04T13:05:22.7933757Z       "id": "REQ-HAZARD-UNC-PATH-STRIP",
2026-06-04T13:05:22.7934606Z       "title": "Strip Windows UNC prefix on serialized paths (5.4)",
2026-06-04T13:05:22.7935081Z       "requiredStages": [
2026-06-04T13:05:22.7935512Z         "impl",
2026-06-04T13:05:22.7935931Z         "unit"
2026-06-04T13:05:22.7936347Z       ],
2026-06-04T13:05:22.7936781Z       "stages": {
2026-06-04T13:05:22.7937197Z         "doc": {
2026-06-04T13:05:22.7937670Z           "complete": false,
2026-06-04T13:05:22.7938122Z           "evidence": []
2026-06-04T13:05:22.7938565Z         },
2026-06-04T13:05:22.7938990Z         "impl": {
2026-06-04T13:05:22.7939517Z           "complete": true,
2026-06-04T13:05:22.7939980Z           "evidence": [
2026-06-04T13:05:22.7940387Z             {
2026-06-04T13:05:22.7941005Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T13:05:22.7941441Z               "line": 35
2026-06-04T13:05:22.7941862Z             }
2026-06-04T13:05:22.7942274Z           ]
2026-06-04T13:05:22.7942690Z         },
2026-06-04T13:05:22.7943112Z         "int": {
2026-06-04T13:05:22.7943575Z           "complete": false,
2026-06-04T13:05:22.7944033Z           "evidence": []
2026-06-04T13:05:22.7944441Z         },
2026-06-04T13:05:22.7944870Z         "unit": {
2026-06-04T13:05:22.7945331Z           "complete": true,
2026-06-04T13:05:22.7945786Z           "evidence": [
2026-06-04T13:05:22.7946209Z             {
2026-06-04T13:05:22.7946816Z               "path": "crates/spt-store/src/atomic.rs",
2026-06-04T13:05:22.7947271Z               "line": 217
2026-06-04T13:05:22.7947698Z             }
2026-06-04T13:05:22.7948118Z           ]
2026-06-04T13:05:22.7948529Z         }
2026-06-04T13:05:22.7948961Z       }
2026-06-04T13:05:22.7949411Z     },
2026-06-04T13:05:22.7949822Z     {
2026-06-04T13:05:22.7950382Z       "id": "REQ-HAZARD-UPDATE-ROLLBACK",
2026-06-04T13:05:22.7951942Z       "title": "Self-update rejects version rollback; metadata expiry + adapter content signing (codex #5)",
2026-06-04T13:05:22.7952427Z       "requiredStages": [
2026-06-04T13:05:22.7952847Z         "impl",
2026-06-04T13:05:22.7953275Z         "unit"
2026-06-04T13:05:22.7953693Z       ],
2026-06-04T13:05:22.7954119Z       "stages": {
2026-06-04T13:05:22.7954547Z         "doc": {
2026-06-04T13:05:22.7955008Z           "complete": false,
2026-06-04T13:05:22.7955470Z           "evidence": []
2026-06-04T13:05:22.7955879Z         },
2026-06-04T13:05:22.7956306Z         "impl": {
2026-06-04T13:05:22.7956774Z           "complete": true,
2026-06-04T13:05:22.7957216Z           "evidence": [
2026-06-04T13:05:22.7957644Z             {
2026-06-04T13:05:22.7958303Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T13:05:22.7958764Z               "line": 256
2026-06-04T13:05:22.7959210Z             },
2026-06-04T13:05:22.7959632Z             {
2026-06-04T13:05:22.7960274Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:22.7960718Z               "line": 221
2026-06-04T13:05:22.7961135Z             },
2026-06-04T13:05:22.7961551Z             {
2026-06-04T13:05:22.7962190Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T13:05:22.7962638Z               "line": 150
2026-06-04T13:05:22.7963055Z             }
2026-06-04T13:05:22.7963470Z           ]
2026-06-04T13:05:22.7963878Z         },
2026-06-04T13:05:22.7964307Z         "int": {
2026-06-04T13:05:22.7964778Z           "complete": false,
2026-06-04T13:05:22.7965229Z           "evidence": []
2026-06-04T13:05:22.7965643Z         },
2026-06-04T13:05:22.7966078Z         "unit": {
2026-06-04T13:05:22.7966739Z           "complete": true,
2026-06-04T13:05:22.7967186Z           "evidence": [
2026-06-04T13:05:22.7967606Z             {
2026-06-04T13:05:22.7968381Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:22.7968844Z               "line": 477
2026-06-04T13:05:22.7969289Z             },
2026-06-04T13:05:22.7969719Z             {
2026-06-04T13:05:22.7970363Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:22.7970812Z               "line": 488
2026-06-04T13:05:22.7971240Z             },
2026-06-04T13:05:22.7971648Z             {
2026-06-04T13:05:22.7972285Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:22.7972734Z               "line": 504
2026-06-04T13:05:22.7973155Z             },
2026-06-04T13:05:22.7973574Z             {
2026-06-04T13:05:22.7974205Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:22.7974653Z               "line": 518
2026-06-04T13:05:22.7975067Z             },
2026-06-04T13:05:22.7975507Z             {
2026-06-04T13:05:22.7976196Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T13:05:22.7976663Z               "line": 268
2026-06-04T13:05:22.7977082Z             }
2026-06-04T13:05:22.7977493Z           ]
2026-06-04T13:05:22.7977909Z         }
2026-06-04T13:05:22.7978321Z       }
2026-06-04T13:05:22.7978737Z     },
2026-06-04T13:05:22.7979138Z     {
2026-06-04T13:05:22.7979723Z       "id": "REQ-HAZARD-WAN-ORIGIN-AUTH",
2026-06-04T13:05:22.7984675Z       "title": "WAN-inbound origin is transport truth, never payload: the access gate's subject (ADR-0009 origin-node whitelist) is the QUIC handshake-proven remote node id from the broker's conn/stream table — a forged origin/node field inside record bytes is inert (7.5)",
2026-06-04T13:05:22.7985173Z       "requiredStages": [
2026-06-04T13:05:22.7985604Z         "doc",
2026-06-04T13:05:22.7986022Z         "impl",
2026-06-04T13:05:22.7986450Z         "unit"
2026-06-04T13:05:22.7986871Z       ],
2026-06-04T13:05:22.7987332Z       "stages": {
2026-06-04T13:05:22.7987761Z         "doc": {
2026-06-04T13:05:22.7988229Z           "complete": true,
2026-06-04T13:05:22.7988697Z           "evidence": [
2026-06-04T13:05:22.7989110Z             {
2026-06-04T13:05:22.7989721Z               "path": "docs/KNOWN-HAZARDS.md",
2026-06-04T13:05:22.7990179Z               "line": 259
2026-06-04T13:05:22.7990589Z             }
2026-06-04T13:05:22.7991008Z           ]
2026-06-04T13:05:22.7991418Z         },
2026-06-04T13:05:22.7991849Z         "impl": {
2026-06-04T13:05:22.7992304Z           "complete": true,
2026-06-04T13:05:22.7992758Z           "evidence": [
2026-06-04T13:05:22.7993178Z             {
2026-06-04T13:05:22.7993811Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T13:05:22.7994264Z               "line": 85
2026-06-04T13:05:22.7994686Z             },
2026-06-04T13:05:22.7995102Z             {
2026-06-04T13:05:22.7995727Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T13:05:22.7996192Z               "line": 99
2026-06-04T13:05:22.7996622Z             },
2026-06-04T13:05:22.7997035Z             {
2026-06-04T13:05:22.7997706Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T13:05:22.7998146Z               "line": 53
2026-06-04T13:05:22.7998575Z             },
2026-06-04T13:05:22.7998992Z             {
2026-06-04T13:05:22.7999698Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T13:05:22.8000147Z               "line": 89
2026-06-04T13:05:22.8000558Z             },
2026-06-04T13:05:22.8000974Z             {
2026-06-04T13:05:22.8001623Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T13:05:22.8002070Z               "line": 29
2026-06-04T13:05:22.8002484Z             },
2026-06-04T13:05:22.8002900Z             {
2026-06-04T13:05:22.8003562Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T13:05:22.8004001Z               "line": 75
2026-06-04T13:05:22.8004427Z             },
2026-06-04T13:05:22.8005009Z             {
2026-06-04T13:05:22.8005717Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T13:05:22.8010336Z               "line": 121
2026-06-04T13:05:22.8011877Z             },
2026-06-04T13:05:22.8012323Z             {
2026-06-04T13:05:22.8012947Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.8013405Z               "line": 40
2026-06-04T13:05:22.8013819Z             },
2026-06-04T13:05:22.8014244Z             {
2026-06-04T13:05:22.8014846Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.8015311Z               "line": 161
2026-06-04T13:05:22.8015735Z             },
2026-06-04T13:05:22.8016152Z             {
2026-06-04T13:05:22.8016740Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T13:05:22.8017182Z               "line": 70
2026-06-04T13:05:22.8017595Z             },
2026-06-04T13:05:22.8018016Z             {
2026-06-04T13:05:22.8018609Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T13:05:22.8019090Z               "line": 210
2026-06-04T13:05:22.8019556Z             },
2026-06-04T13:05:22.8019974Z             {
2026-06-04T13:05:22.8020586Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T13:05:22.8021030Z               "line": 37
2026-06-04T13:05:22.8021449Z             },
2026-06-04T13:05:22.8021857Z             {
2026-06-04T13:05:22.8022494Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T13:05:22.8022931Z               "line": 38
2026-06-04T13:05:22.8023350Z             },
2026-06-04T13:05:22.8023753Z             {
2026-06-04T13:05:22.8024381Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T13:05:22.8024831Z               "line": 36
2026-06-04T13:05:22.8025245Z             },
2026-06-04T13:05:22.8025662Z             {
2026-06-04T13:05:22.8026265Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T13:05:22.8026715Z               "line": 40
2026-06-04T13:05:22.8027120Z             }
2026-06-04T13:05:22.8027550Z           ]
2026-06-04T13:05:22.8027959Z         },
2026-06-04T13:05:22.8028376Z         "int": {
2026-06-04T13:05:22.8028849Z           "complete": false,
2026-06-04T13:05:22.8029352Z           "evidence": []
2026-06-04T13:05:22.8029771Z         },
2026-06-04T13:05:22.8030195Z         "unit": {
2026-06-04T13:05:22.8030661Z           "complete": true,
2026-06-04T13:05:22.8031110Z           "evidence": [
2026-06-04T13:05:22.8031520Z             {
2026-06-04T13:05:22.8032180Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T13:05:22.8032627Z               "line": 179
2026-06-04T13:05:22.8033044Z             },
2026-06-04T13:05:22.8033455Z             {
2026-06-04T13:05:22.8034143Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-04T13:05:22.8034597Z               "line": 117
2026-06-04T13:05:22.8035010Z             },
2026-06-04T13:05:22.8035435Z             {
2026-06-04T13:05:22.8036122Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T13:05:22.8036592Z               "line": 344
2026-06-04T13:05:22.8037006Z             },
2026-06-04T13:05:22.8037421Z             {
2026-06-04T13:05:22.8038047Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T13:05:22.8038501Z               "line": 204
2026-06-04T13:05:22.8038920Z             },
2026-06-04T13:05:22.8039364Z             {
2026-06-04T13:05:22.8040024Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T13:05:22.8040467Z               "line": 147
2026-06-04T13:05:22.8040888Z             },
2026-06-04T13:05:22.8041297Z             {
2026-06-04T13:05:22.8041913Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T13:05:22.8042365Z               "line": 106
2026-06-04T13:05:22.8042772Z             },
2026-06-04T13:05:22.8043185Z             {
2026-06-04T13:05:22.8043791Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T13:05:22.8044249Z               "line": 142
2026-06-04T13:05:22.8044666Z             },
2026-06-04T13:05:22.8045270Z             {
2026-06-04T13:05:22.8045908Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T13:05:22.8046347Z               "line": 139
2026-06-04T13:05:22.8046911Z             },
2026-06-04T13:05:22.8047335Z             {
2026-06-04T13:05:22.8047965Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T13:05:22.8048417Z               "line": 126
2026-06-04T13:05:22.8048828Z             },
2026-06-04T13:05:22.8049288Z             {
2026-06-04T13:05:22.8049893Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T13:05:22.8050345Z               "line": 135
2026-06-04T13:05:22.8050771Z             }
2026-06-04T13:05:22.8051182Z           ]
2026-06-04T13:05:22.8051599Z         }
2026-06-04T13:05:22.8052011Z       }
2026-06-04T13:05:22.8052424Z     },
2026-06-04T13:05:22.8052828Z     {
2026-06-04T13:05:22.8053432Z       "id": "REQ-HAZARD-WINDOWS-PID-RECYCLE",
2026-06-04T13:05:22.8054308Z       "title": "Windows PID-recycling false positives guarded (5.1)",
2026-06-04T13:05:22.8054799Z       "requiredStages": [
2026-06-04T13:05:22.8055228Z         "impl",
2026-06-04T13:05:22.8055654Z         "unit"
2026-06-04T13:05:22.8056082Z       ],
2026-06-04T13:05:22.8056514Z       "stages": {
2026-06-04T13:05:22.8056944Z         "doc": {
2026-06-04T13:05:22.8057415Z           "complete": false,
2026-06-04T13:05:22.8057861Z           "evidence": []
2026-06-04T13:05:22.8058281Z         },
2026-06-04T13:05:22.8058708Z         "impl": {
2026-06-04T13:05:22.8059213Z           "complete": true,
2026-06-04T13:05:22.8059670Z           "evidence": [
2026-06-04T13:05:22.8060088Z             {
2026-06-04T13:05:22.8060703Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8061144Z               "line": 95
2026-06-04T13:05:22.8061569Z             },
2026-06-04T13:05:22.8061987Z             {
2026-06-04T13:05:22.8062593Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:22.8063029Z               "line": 96
2026-06-04T13:05:22.8063448Z             }
2026-06-04T13:05:22.8063892Z           ]
2026-06-04T13:05:22.8064304Z         },
2026-06-04T13:05:22.8064731Z         "int": {
2026-06-04T13:05:22.8065212Z           "complete": false,
2026-06-04T13:05:22.8065670Z           "evidence": []
2026-06-04T13:05:22.8066081Z         },
2026-06-04T13:05:22.8066510Z         "unit": {
2026-06-04T13:05:22.8066976Z           "complete": true,
2026-06-04T13:05:22.8067418Z           "evidence": [
2026-06-04T13:05:22.8067838Z             {
2026-06-04T13:05:22.8068440Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8068892Z               "line": 250
2026-06-04T13:05:22.8069344Z             },
2026-06-04T13:05:22.8069774Z             {
2026-06-04T13:05:22.8070377Z               "path": "crates/spt-store/src/proc.rs",
2026-06-04T13:05:22.8070825Z               "line": 139
2026-06-04T13:05:22.8071252Z             },
2026-06-04T13:05:22.8071659Z             {
2026-06-04T13:05:22.8072266Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:22.8072726Z               "line": 384
2026-06-04T13:05:22.8073146Z             },
2026-06-04T13:05:22.8073563Z             {
2026-06-04T13:05:22.8074176Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:22.8074623Z               "line": 414
2026-06-04T13:05:22.8075031Z             }
2026-06-04T13:05:22.8075450Z           ]
2026-06-04T13:05:22.8075862Z         }
2026-06-04T13:05:22.8076278Z       }
2026-06-04T13:05:22.8076697Z     },
2026-06-04T13:05:22.8077105Z     {
2026-06-04T13:05:22.8077640Z       "id": "REQ-HAZARD-WORKER-PATH",
2026-06-04T13:05:22.8078660Z       "title": "Single source of truth for Worker/Psyche perch location (1.5)",
2026-06-04T13:05:22.8079142Z       "requiredStages": [
2026-06-04T13:05:22.8079600Z         "impl",
2026-06-04T13:05:22.8080029Z         "unit"
2026-06-04T13:05:22.8080446Z       ],
2026-06-04T13:05:22.8080880Z       "stages": {
2026-06-04T13:05:22.8081309Z         "doc": {
2026-06-04T13:05:22.8081776Z           "complete": false,
2026-06-04T13:05:22.8082421Z           "evidence": []
2026-06-04T13:05:22.8082831Z         },
2026-06-04T13:05:22.8083263Z         "impl": {
2026-06-04T13:05:22.8083908Z           "complete": true,
2026-06-04T13:05:22.8084354Z           "evidence": [
2026-06-04T13:05:22.8084769Z             {
2026-06-04T13:05:22.8085376Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.8085824Z               "line": 177
2026-06-04T13:05:22.8086239Z             },
2026-06-04T13:05:22.8086657Z             {
2026-06-04T13:05:22.8087265Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.8087707Z               "line": 222
2026-06-04T13:05:22.8088130Z             },
2026-06-04T13:05:22.8094639Z             {
2026-06-04T13:05:22.8095470Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.8095924Z               "line": 234
2026-06-04T13:05:22.8096346Z             }
2026-06-04T13:05:22.8096767Z           ]
2026-06-04T13:05:22.8097182Z         },
2026-06-04T13:05:22.8097666Z         "int": {
2026-06-04T13:05:22.8098147Z           "complete": false,
2026-06-04T13:05:22.8098607Z           "evidence": []
2026-06-04T13:05:22.8099038Z         },
2026-06-04T13:05:22.8099615Z         "unit": {
2026-06-04T13:05:22.8100123Z           "complete": true,
2026-06-04T13:05:22.8100574Z           "evidence": [
2026-06-04T13:05:22.8100997Z             {
2026-06-04T13:05:22.8101603Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.8102067Z               "line": 370
2026-06-04T13:05:22.8102480Z             },
2026-06-04T13:05:22.8102908Z             {
2026-06-04T13:05:22.8103520Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:22.8103965Z               "line": 399
2026-06-04T13:05:22.8104386Z             }
2026-06-04T13:05:22.8104794Z           ]
2026-06-04T13:05:22.8105210Z         }
2026-06-04T13:05:22.8105616Z       }
2026-06-04T13:05:22.8106033Z     },
2026-06-04T13:05:22.8106455Z     {
2026-06-04T13:05:22.8106916Z       "id": "REQ-INFRA-1",
2026-06-04T13:05:22.8107957Z       "title": "GitHub issue tracking for v1; tangled.org as migration target",
2026-06-04T13:05:22.8108439Z       "requiredStages": [],
2026-06-04T13:05:22.8108890Z       "stages": {
2026-06-04T13:05:22.8109363Z         "doc": {
2026-06-04T13:05:22.8109855Z           "complete": false,
2026-06-04T13:05:22.8110320Z           "evidence": []
2026-06-04T13:05:22.8110729Z         },
2026-06-04T13:05:22.8111167Z         "impl": {
2026-06-04T13:05:22.8111634Z           "complete": false,
2026-06-04T13:05:22.8112086Z           "evidence": []
2026-06-04T13:05:22.8112525Z         },
2026-06-04T13:05:22.8112962Z         "int": {
2026-06-04T13:05:22.8113439Z           "complete": false,
2026-06-04T13:05:22.8113885Z           "evidence": []
2026-06-04T13:05:22.8114299Z         },
2026-06-04T13:05:22.8114717Z         "unit": {
2026-06-04T13:05:22.8115190Z           "complete": false,
2026-06-04T13:05:22.8115640Z           "evidence": []
2026-06-04T13:05:22.8116048Z         }
2026-06-04T13:05:22.8116477Z       }
2026-06-04T13:05:22.8116886Z     },
2026-06-04T13:05:22.8117303Z     {
2026-06-04T13:05:22.8117750Z       "id": "REQ-INST-1",
2026-06-04T13:05:22.8118630Z       "title": "endpoint ID vs instance split (adapter-agnostic ID)",
2026-06-04T13:05:22.8119107Z       "requiredStages": [],
2026-06-04T13:05:22.8119605Z       "stages": {
2026-06-04T13:05:22.8120039Z         "doc": {
2026-06-04T13:05:22.8120505Z           "complete": false,
2026-06-04T13:05:22.8120961Z           "evidence": []
2026-06-04T13:05:22.8121369Z         },
2026-06-04T13:05:22.8121800Z         "impl": {
2026-06-04T13:05:22.8122266Z           "complete": false,
2026-06-04T13:05:22.8122721Z           "evidence": []
2026-06-04T13:05:22.8123134Z         },
2026-06-04T13:05:22.8123553Z         "int": {
2026-06-04T13:05:22.8124024Z           "complete": false,
2026-06-04T13:05:22.8124475Z           "evidence": []
2026-06-04T13:05:22.8124888Z         },
2026-06-04T13:05:22.8125308Z         "unit": {
2026-06-04T13:05:22.8126075Z           "complete": false,
2026-06-04T13:05:22.8126532Z           "evidence": []
2026-06-04T13:05:22.8126940Z         }
2026-06-04T13:05:22.8127356Z       }
2026-06-04T13:05:22.8127896Z     },
2026-06-04T13:05:22.8128310Z     {
2026-06-04T13:05:22.8128774Z       "id": "REQ-INST-10",
2026-06-04T13:05:22.8130051Z       "title": "Qualified addressing [subnet:]id[@node] + ambiguity forces qualification",
2026-06-04T13:05:22.8130540Z       "requiredStages": [
2026-06-04T13:05:22.8130961Z         "impl",
2026-06-04T13:05:22.8131383Z         "unit"
2026-06-04T13:05:22.8131796Z       ],
2026-06-04T13:05:22.8132225Z       "stages": {
2026-06-04T13:05:22.8132645Z         "doc": {
2026-06-04T13:05:22.8133124Z           "complete": false,
2026-06-04T13:05:22.8133578Z           "evidence": []
2026-06-04T13:05:22.8133988Z         },
2026-06-04T13:05:22.8134426Z         "impl": {
2026-06-04T13:05:22.8134889Z           "complete": true,
2026-06-04T13:05:22.8135344Z           "evidence": [
2026-06-04T13:05:22.8135762Z             {
2026-06-04T13:05:22.8136443Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8136905Z               "line": 358
2026-06-04T13:05:22.8137337Z             },
2026-06-04T13:05:22.8137759Z             {
2026-06-04T13:05:22.8138404Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8138866Z               "line": 413
2026-06-04T13:05:22.8139320Z             },
2026-06-04T13:05:22.8139754Z             {
2026-06-04T13:05:22.8140369Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T13:05:22.8140812Z               "line": 13
2026-06-04T13:05:22.8141238Z             },
2026-06-04T13:05:22.8141656Z             {
2026-06-04T13:05:22.8142269Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T13:05:22.8142712Z               "line": 67
2026-06-04T13:05:22.8143145Z             },
2026-06-04T13:05:22.8143565Z             {
2026-06-04T13:05:22.8144131Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T13:05:22.8144600Z               "line": 18
2026-06-04T13:05:22.8145014Z             }
2026-06-04T13:05:22.8145438Z           ]
2026-06-04T13:05:22.8145848Z         },
2026-06-04T13:05:22.8146286Z         "int": {
2026-06-04T13:05:22.8146758Z           "complete": false,
2026-06-04T13:05:22.8147210Z           "evidence": []
2026-06-04T13:05:22.8147631Z         },
2026-06-04T13:05:22.8148054Z         "unit": {
2026-06-04T13:05:22.8148526Z           "complete": true,
2026-06-04T13:05:22.8148970Z           "evidence": [
2026-06-04T13:05:22.8149478Z             {
2026-06-04T13:05:22.8150154Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8150602Z               "line": 557
2026-06-04T13:05:22.8151026Z             },
2026-06-04T13:05:22.8151438Z             {
2026-06-04T13:05:22.8152093Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8152538Z               "line": 585
2026-06-04T13:05:22.8152963Z             },
2026-06-04T13:05:22.8153388Z             {
2026-06-04T13:05:22.8154060Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8154519Z               "line": 593
2026-06-04T13:05:22.8154948Z             },
2026-06-04T13:05:22.8155373Z             {
2026-06-04T13:05:22.8156012Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8156470Z               "line": 606
2026-06-04T13:05:22.8156897Z             },
2026-06-04T13:05:22.8157308Z             {
2026-06-04T13:05:22.8157965Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8158411Z               "line": 619
2026-06-04T13:05:22.8158834Z             },
2026-06-04T13:05:22.8159287Z             {
2026-06-04T13:05:22.8159943Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8160396Z               "line": 635
2026-06-04T13:05:22.8160816Z             },
2026-06-04T13:05:22.8161241Z             {
2026-06-04T13:05:22.8161884Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8162516Z               "line": 864
2026-06-04T13:05:22.8162932Z             },
2026-06-04T13:05:22.8163357Z             {
2026-06-04T13:05:22.8163968Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T13:05:22.8164542Z               "line": 121
2026-06-04T13:05:22.8164970Z             },
2026-06-04T13:05:22.8165383Z             {
2026-06-04T13:05:22.8165992Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T13:05:22.8166446Z               "line": 142
2026-06-04T13:05:22.8166862Z             },
2026-06-04T13:05:22.8167282Z             {
2026-06-04T13:05:22.8167872Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T13:05:22.8168329Z               "line": 150
2026-06-04T13:05:22.8168739Z             },
2026-06-04T13:05:22.8169205Z             {
2026-06-04T13:05:22.8169808Z               "path": "crates/spt-proto/src/addr.rs",
2026-06-04T13:05:22.8170257Z               "line": 158
2026-06-04T13:05:22.8170680Z             }
2026-06-04T13:05:22.8171090Z           ]
2026-06-04T13:05:22.8171525Z         }
2026-06-04T13:05:22.8171941Z       }
2026-06-04T13:05:22.8176809Z     },
2026-06-04T13:05:22.8177352Z     {
2026-06-04T13:05:22.8177871Z       "id": "REQ-INST-11",
2026-06-04T13:05:22.8179142Z       "title": "spt rename <id> rippled to all instances (collision-checked, 6.5-reconciled)",
2026-06-04T13:05:22.8179768Z       "requiredStages": [
2026-06-04T13:05:22.8180215Z         "impl",
2026-06-04T13:05:22.8180640Z         "unit"
2026-06-04T13:05:22.8181061Z       ],
2026-06-04T13:05:22.8181494Z       "stages": {
2026-06-04T13:05:22.8181918Z         "doc": {
2026-06-04T13:05:22.8182395Z           "complete": false,
2026-06-04T13:05:22.8182843Z           "evidence": []
2026-06-04T13:05:22.8183261Z         },
2026-06-04T13:05:22.8183684Z         "impl": {
2026-06-04T13:05:22.8184151Z           "complete": true,
2026-06-04T13:05:22.8184605Z           "evidence": [
2026-06-04T13:05:22.8185018Z             {
2026-06-04T13:05:22.8185680Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8186154Z               "line": 260
2026-06-04T13:05:22.8186577Z             },
2026-06-04T13:05:22.8186998Z             {
2026-06-04T13:05:22.8187710Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:22.8188161Z               "line": 243
2026-06-04T13:05:22.8188575Z             },
2026-06-04T13:05:22.8188998Z             {
2026-06-04T13:05:22.8189659Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T13:05:22.8190125Z               "line": 59
2026-06-04T13:05:22.8190538Z             },
2026-06-04T13:05:22.8190957Z             {
2026-06-04T13:05:22.8191511Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.8191960Z               "line": 915
2026-06-04T13:05:22.8192388Z             },
2026-06-04T13:05:22.8192804Z             {
2026-06-04T13:05:22.8193358Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.8193811Z               "line": 1020
2026-06-04T13:05:22.8194228Z             }
2026-06-04T13:05:22.8194664Z           ]
2026-06-04T13:05:22.8195072Z         },
2026-06-04T13:05:22.8195497Z         "int": {
2026-06-04T13:05:22.8195962Z           "complete": false,
2026-06-04T13:05:22.8196434Z           "evidence": []
2026-06-04T13:05:22.8196845Z         },
2026-06-04T13:05:22.8197275Z         "unit": {
2026-06-04T13:05:22.8197746Z           "complete": true,
2026-06-04T13:05:22.8198198Z           "evidence": [
2026-06-04T13:05:22.8198620Z             {
2026-06-04T13:05:22.8199315Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8199776Z               "line": 728
2026-06-04T13:05:22.8200188Z             },
2026-06-04T13:05:22.8200609Z             {
2026-06-04T13:05:22.8201267Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8201712Z               "line": 751
2026-06-04T13:05:22.8202136Z             },
2026-06-04T13:05:22.8202549Z             {
2026-06-04T13:05:22.8203240Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:22.8203955Z               "line": 356
2026-06-04T13:05:22.8204383Z             },
2026-06-04T13:05:22.8204801Z             {
2026-06-04T13:05:22.8205554Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T13:05:22.8206011Z               "line": 156
2026-06-04T13:05:22.8206428Z             },
2026-06-04T13:05:22.8206849Z             {
2026-06-04T13:05:22.8207454Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T13:05:22.8207907Z               "line": 177
2026-06-04T13:05:22.8208328Z             },
2026-06-04T13:05:22.8208739Z             {
2026-06-04T13:05:22.8209398Z               "path": "crates/spt-store/src/rename.rs",
2026-06-04T13:05:22.8209861Z               "line": 209
2026-06-04T13:05:22.8210280Z             },
2026-06-04T13:05:22.8210695Z             {
2026-06-04T13:05:22.8211247Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.8211701Z               "line": 1113
2026-06-04T13:05:22.8212117Z             }
2026-06-04T13:05:22.8212530Z           ]
2026-06-04T13:05:22.8212959Z         }
2026-06-04T13:05:22.8213380Z       }
2026-06-04T13:05:22.8213788Z     },
2026-06-04T13:05:22.8214198Z     {
2026-06-04T13:05:22.8214678Z       "id": "REQ-INST-12",
2026-06-04T13:05:22.8216429Z       "title": "Endpoint visibility per-(endpoint,subnet): excluded semantics, OR-of-defaults + override, gates sync",
2026-06-04T13:05:22.8216916Z       "requiredStages": [
2026-06-04T13:05:22.8217333Z         "impl",
2026-06-04T13:05:22.8217753Z         "unit"
2026-06-04T13:05:22.8218163Z       ],
2026-06-04T13:05:22.8218600Z       "stages": {
2026-06-04T13:05:22.8219023Z         "doc": {
2026-06-04T13:05:22.8219526Z           "complete": false,
2026-06-04T13:05:22.8219999Z           "evidence": []
2026-06-04T13:05:22.8220425Z         },
2026-06-04T13:05:22.8220893Z         "impl": {
2026-06-04T13:05:22.8221387Z           "complete": true,
2026-06-04T13:05:22.8221885Z           "evidence": [
2026-06-04T13:05:22.8222311Z             {
2026-06-04T13:05:22.8222973Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8223454Z               "line": 312
2026-06-04T13:05:22.8223877Z             },
2026-06-04T13:05:22.8224315Z             {
2026-06-04T13:05:22.8224958Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8225420Z               "line": 369
2026-06-04T13:05:22.8225845Z             },
2026-06-04T13:05:22.8226254Z             {
2026-06-04T13:05:22.8226907Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8227353Z               "line": 427
2026-06-04T13:05:22.8227780Z             },
2026-06-04T13:05:22.8228201Z             {
2026-06-04T13:05:22.8228803Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.8229298Z               "line": 87
2026-06-04T13:05:22.8229728Z             },
2026-06-04T13:05:22.8230151Z             {
2026-06-04T13:05:22.8230761Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.8231219Z               "line": 216
2026-06-04T13:05:22.8231673Z             },
2026-06-04T13:05:22.8232088Z             {
2026-06-04T13:05:22.8232757Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T13:05:22.8233222Z               "line": 132
2026-06-04T13:05:22.8233654Z             }
2026-06-04T13:05:22.8234064Z           ]
2026-06-04T13:05:22.8234482Z         },
2026-06-04T13:05:22.8234910Z         "int": {
2026-06-04T13:05:22.8235378Z           "complete": false,
2026-06-04T13:05:22.8235830Z           "evidence": []
2026-06-04T13:05:22.8236243Z         },
2026-06-04T13:05:22.8236673Z         "unit": {
2026-06-04T13:05:22.8237135Z           "complete": true,
2026-06-04T13:05:22.8237587Z           "evidence": [
2026-06-04T13:05:22.8238009Z             {
2026-06-04T13:05:22.8238659Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8239113Z               "line": 786
2026-06-04T13:05:22.8239558Z             },
2026-06-04T13:05:22.8239977Z             {
2026-06-04T13:05:22.8240617Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8241248Z               "line": 803
2026-06-04T13:05:22.8241678Z             },
2026-06-04T13:05:22.8242266Z             {
2026-06-04T13:05:22.8242926Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8243374Z               "line": 834
2026-06-04T13:05:22.8243798Z             },
2026-06-04T13:05:22.8244215Z             {
2026-06-04T13:05:22.8244828Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.8245289Z               "line": 350
2026-06-04T13:05:22.8245712Z             },
2026-06-04T13:05:22.8246132Z             {
2026-06-04T13:05:22.8246785Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T13:05:22.8247239Z               "line": 169
2026-06-04T13:05:22.8247660Z             },
2026-06-04T13:05:22.8248089Z             {
2026-06-04T13:05:22.8248754Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T13:05:22.8249260Z               "line": 181
2026-06-04T13:05:22.8249717Z             },
2026-06-04T13:05:22.8250136Z             {
2026-06-04T13:05:22.8250799Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T13:05:22.8251262Z               "line": 198
2026-06-04T13:05:22.8251690Z             }
2026-06-04T13:05:22.8252111Z           ]
2026-06-04T13:05:22.8252520Z         }
2026-06-04T13:05:22.8252935Z       }
2026-06-04T13:05:22.8253341Z     },
2026-06-04T13:05:22.8253754Z     {
2026-06-04T13:05:22.8254217Z       "id": "REQ-INST-13",
2026-06-04T13:05:22.8255243Z       "title": "Subnet-exclusive sync + per-endpoint subnet-membership list",
2026-06-04T13:05:22.8255733Z       "requiredStages": [
2026-06-04T13:05:22.8256163Z         "impl",
2026-06-04T13:05:22.8260760Z         "unit"
2026-06-04T13:05:22.8261324Z       ],
2026-06-04T13:05:22.8261773Z       "stages": {
2026-06-04T13:05:22.8262197Z         "doc": {
2026-06-04T13:05:22.8262687Z           "complete": false,
2026-06-04T13:05:22.8263146Z           "evidence": []
2026-06-04T13:05:22.8263608Z         },
2026-06-04T13:05:22.8264041Z         "impl": {
2026-06-04T13:05:22.8264506Z           "complete": true,
2026-06-04T13:05:22.8264963Z           "evidence": [
2026-06-04T13:05:22.8265396Z             {
2026-06-04T13:05:22.8266013Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.8266463Z               "line": 94
2026-06-04T13:05:22.8266881Z             },
2026-06-04T13:05:22.8267301Z             {
2026-06-04T13:05:22.8267970Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T13:05:22.8268426Z               "line": 155
2026-06-04T13:05:22.8268841Z             }
2026-06-04T13:05:22.8269315Z           ]
2026-06-04T13:05:22.8269738Z         },
2026-06-04T13:05:22.8270155Z         "int": {
2026-06-04T13:05:22.8270628Z           "complete": false,
2026-06-04T13:05:22.8271075Z           "evidence": []
2026-06-04T13:05:22.8271499Z         },
2026-06-04T13:05:22.8271924Z         "unit": {
2026-06-04T13:05:22.8272395Z           "complete": true,
2026-06-04T13:05:22.8272862Z           "evidence": [
2026-06-04T13:05:22.8273275Z             {
2026-06-04T13:05:22.8273937Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T13:05:22.8274405Z               "line": 221
2026-06-04T13:05:22.8274836Z             },
2026-06-04T13:05:22.8275249Z             {
2026-06-04T13:05:22.8275911Z               "path": "crates/spt-store/src/visibility.rs",
2026-06-04T13:05:22.8276369Z               "line": 233
2026-06-04T13:05:22.8276786Z             }
2026-06-04T13:05:22.8277201Z           ]
2026-06-04T13:05:22.8277613Z         }
2026-06-04T13:05:22.8278032Z       }
2026-06-04T13:05:22.8278438Z     },
2026-06-04T13:05:22.8278854Z     {
2026-06-04T13:05:22.8279360Z       "id": "REQ-INST-14",
2026-06-04T13:05:22.8281712Z       "title": "Resource advertisement (subnet resource registry): free-text blurb, both-authored, registry projection, visibility/whitelist-gated",
2026-06-04T13:05:22.8282209Z       "requiredStages": [],
2026-06-04T13:05:22.8282642Z       "stages": {
2026-06-04T13:05:22.8283337Z         "doc": {
2026-06-04T13:05:22.8283813Z           "complete": false,
2026-06-04T13:05:22.8284262Z           "evidence": []
2026-06-04T13:05:22.8284815Z         },
2026-06-04T13:05:22.8285255Z         "impl": {
2026-06-04T13:05:22.8285736Z           "complete": false,
2026-06-04T13:05:22.8286188Z           "evidence": []
2026-06-04T13:05:22.8286605Z         },
2026-06-04T13:05:22.8287035Z         "int": {
2026-06-04T13:05:22.8287502Z           "complete": false,
2026-06-04T13:05:22.8287957Z           "evidence": []
2026-06-04T13:05:22.8288371Z         },
2026-06-04T13:05:22.8288797Z         "unit": {
2026-06-04T13:05:22.8289304Z           "complete": false,
2026-06-04T13:05:22.8289768Z           "evidence": []
2026-06-04T13:05:22.8290175Z         }
2026-06-04T13:05:22.8290589Z       }
2026-06-04T13:05:22.8291001Z     },
2026-06-04T13:05:22.8291404Z     {
2026-06-04T13:05:22.8291874Z       "id": "REQ-INST-15",
2026-06-04T13:05:22.8296560Z       "title": "Immutable home subnet (assigned at creation: auto-if-one/ask-if-many) + spt fork (cross-subnet clone to a new identity, copy-then-diverge, not re-home); adapter chosen at creation from registered hostable adapters, changed only via launch/resume-under-new (ADR-0010)",
2026-06-04T13:05:22.8297086Z       "requiredStages": [],
2026-06-04T13:05:22.8297523Z       "stages": {
2026-06-04T13:05:22.8297938Z         "doc": {
2026-06-04T13:05:22.8298407Z           "complete": false,
2026-06-04T13:05:22.8298858Z           "evidence": []
2026-06-04T13:05:22.8299312Z         },
2026-06-04T13:05:22.8299737Z         "impl": {
2026-06-04T13:05:22.8300206Z           "complete": false,
2026-06-04T13:05:22.8300656Z           "evidence": []
2026-06-04T13:05:22.8301061Z         },
2026-06-04T13:05:22.8301488Z         "int": {
2026-06-04T13:05:22.8301949Z           "complete": false,
2026-06-04T13:05:22.8302404Z           "evidence": []
2026-06-04T13:05:22.8302808Z         },
2026-06-04T13:05:22.8303239Z         "unit": {
2026-06-04T13:05:22.8303735Z           "complete": false,
2026-06-04T13:05:22.8304180Z           "evidence": []
2026-06-04T13:05:22.8304596Z         }
2026-06-04T13:05:22.8305007Z       }
2026-06-04T13:05:22.8305433Z     },
2026-06-04T13:05:22.8305835Z     {
2026-06-04T13:05:22.8306293Z       "id": "REQ-INST-2",
2026-06-04T13:05:22.8306921Z       "title": "Per-node files, synced Psyche mind",
2026-06-04T13:05:22.8307391Z       "requiredStages": [
2026-06-04T13:05:22.8307817Z         "impl",
2026-06-04T13:05:22.8308233Z         "unit"
2026-06-04T13:05:22.8308650Z       ],
2026-06-04T13:05:22.8309073Z       "stages": {
2026-06-04T13:05:22.8309540Z         "doc": {
2026-06-04T13:05:22.8310015Z           "complete": false,
2026-06-04T13:05:22.8310470Z           "evidence": []
2026-06-04T13:05:22.8310890Z         },
2026-06-04T13:05:22.8311319Z         "impl": {
2026-06-04T13:05:22.8311794Z           "complete": true,
2026-06-04T13:05:22.8312246Z           "evidence": [
2026-06-04T13:05:22.8312672Z             {
2026-06-04T13:05:22.8313345Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.8313792Z               "line": 86
2026-06-04T13:05:22.8314213Z             },
2026-06-04T13:05:22.8314641Z             {
2026-06-04T13:05:22.8315249Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T13:05:22.8315686Z               "line": 28
2026-06-04T13:05:22.8316109Z             },
2026-06-04T13:05:22.8316527Z             {
2026-06-04T13:05:22.8317118Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T13:05:22.8317570Z               "line": 74
2026-06-04T13:05:22.8317987Z             },
2026-06-04T13:05:22.8318405Z             {
2026-06-04T13:05:22.8319003Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T13:05:22.8319496Z               "line": 96
2026-06-04T13:05:22.8319923Z             },
2026-06-04T13:05:22.8320332Z             {
2026-06-04T13:05:22.8320935Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T13:05:22.8321374Z               "line": 81
2026-06-04T13:05:22.8321970Z             },
2026-06-04T13:05:22.8322384Z             {
2026-06-04T13:05:22.8322995Z               "path": "crates/spt-live/src/signoff.rs",
2026-06-04T13:05:22.8323574Z               "line": 118
2026-06-04T13:05:22.8323999Z             }
2026-06-04T13:05:22.8324416Z           ]
2026-06-04T13:05:22.8324830Z         },
2026-06-04T13:05:22.8325261Z         "int": {
2026-06-04T13:05:22.8325727Z           "complete": false,
2026-06-04T13:05:22.8326189Z           "evidence": []
2026-06-04T13:05:22.8326604Z         },
2026-06-04T13:05:22.8327023Z         "unit": {
2026-06-04T13:05:22.8327487Z           "complete": true,
2026-06-04T13:05:22.8327931Z           "evidence": [
2026-06-04T13:05:22.8328351Z             {
2026-06-04T13:05:22.8328949Z               "path": "crates/spt-live/src/ingest.rs",
2026-06-04T13:05:22.8329446Z               "line": 203
2026-06-04T13:05:22.8329872Z             },
2026-06-04T13:05:22.8330290Z             {
2026-06-04T13:05:22.8330895Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T13:05:22.8331367Z               "line": 232
2026-06-04T13:05:22.8331792Z             }
2026-06-04T13:05:22.8332203Z           ]
2026-06-04T13:05:22.8332633Z         }
2026-06-04T13:05:22.8333051Z       }
2026-06-04T13:05:22.8333459Z     },
2026-06-04T13:05:22.8333870Z     {
2026-06-04T13:05:22.8334325Z       "id": "REQ-INST-3",
2026-06-04T13:05:22.8335124Z       "title": "Dormant (warm) / suspended (cold) resting states",
2026-06-04T13:05:22.8335599Z       "requiredStages": [
2026-06-04T13:05:22.8336037Z         "doc",
2026-06-04T13:05:22.8336468Z         "impl",
2026-06-04T13:05:22.8336883Z         "unit"
2026-06-04T13:05:22.8337296Z       ],
2026-06-04T13:05:22.8337725Z       "stages": {
2026-06-04T13:05:22.8338147Z         "doc": {
2026-06-04T13:05:22.8338603Z           "complete": true,
2026-06-04T13:05:22.8339051Z           "evidence": [
2026-06-04T13:05:22.8339501Z             {
2026-06-04T13:05:22.8340072Z               "path": "docs/DORMANCY-BUDGET.md",
2026-06-04T13:05:22.8340530Z               "line": 3
2026-06-04T13:05:22.8340947Z             }
2026-06-04T13:05:22.8341365Z           ]
2026-06-04T13:05:22.8341792Z         },
2026-06-04T13:05:22.8346204Z         "impl": {
2026-06-04T13:05:22.8346740Z           "complete": true,
2026-06-04T13:05:22.8347194Z           "evidence": [
2026-06-04T13:05:22.8347618Z             {
2026-06-04T13:05:22.8348252Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T13:05:22.8348704Z               "line": 70
2026-06-04T13:05:22.8349121Z             },
2026-06-04T13:05:22.8349614Z             {
2026-06-04T13:05:22.8350280Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T13:05:22.8350726Z               "line": 385
2026-06-04T13:05:22.8351148Z             },
2026-06-04T13:05:22.8351560Z             {
2026-06-04T13:05:22.8352225Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.8352667Z               "line": 197
2026-06-04T13:05:22.8353097Z             },
2026-06-04T13:05:22.8353555Z             {
2026-06-04T13:05:22.8354204Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.8354655Z               "line": 272
2026-06-04T13:05:22.8355082Z             },
2026-06-04T13:05:22.8355500Z             {
2026-06-04T13:05:22.8356138Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.8356592Z               "line": 293
2026-06-04T13:05:22.8357013Z             },
2026-06-04T13:05:22.8357425Z             {
2026-06-04T13:05:22.8358086Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T13:05:22.8358530Z               "line": 234
2026-06-04T13:05:22.8358948Z             },
2026-06-04T13:05:22.8359403Z             {
2026-06-04T13:05:22.8360102Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T13:05:22.8360555Z               "line": 147
2026-06-04T13:05:22.8360976Z             },
2026-06-04T13:05:22.8361394Z             {
2026-06-04T13:05:22.8362085Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T13:05:22.8362778Z               "line": 214
2026-06-04T13:05:22.8363200Z             },
2026-06-04T13:05:22.8363607Z             {
2026-06-04T13:05:22.8364373Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8364817Z               "line": 44
2026-06-04T13:05:22.8365234Z             },
2026-06-04T13:05:22.8365642Z             {
2026-06-04T13:05:22.8366279Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8366735Z               "line": 113
2026-06-04T13:05:22.8367153Z             },
2026-06-04T13:05:22.8367572Z             {
2026-06-04T13:05:22.8368207Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8368657Z               "line": 151
2026-06-04T13:05:22.8369069Z             },
2026-06-04T13:05:22.8369526Z             {
2026-06-04T13:05:22.8370170Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8370611Z               "line": 167
2026-06-04T13:05:22.8371048Z             },
2026-06-04T13:05:22.8371468Z             {
2026-06-04T13:05:22.8372103Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8372563Z               "line": 177
2026-06-04T13:05:22.8372985Z             },
2026-06-04T13:05:22.8373398Z             {
2026-06-04T13:05:22.8374027Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8374483Z               "line": 209
2026-06-04T13:05:22.8374895Z             },
2026-06-04T13:05:22.8375316Z             {
2026-06-04T13:05:22.8375950Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8376398Z               "line": 282
2026-06-04T13:05:22.8376821Z             },
2026-06-04T13:05:22.8377231Z             {
2026-06-04T13:05:22.8377868Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8378315Z               "line": 306
2026-06-04T13:05:22.8378740Z             },
2026-06-04T13:05:22.8379151Z             {
2026-06-04T13:05:22.8379834Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8380304Z               "line": 346
2026-06-04T13:05:22.8380720Z             },
2026-06-04T13:05:22.8381150Z             {
2026-06-04T13:05:22.8381775Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8382223Z               "line": 361
2026-06-04T13:05:22.8382646Z             },
2026-06-04T13:05:22.8383055Z             {
2026-06-04T13:05:22.8383700Z               "path": "crates/spt-daemon/tests/budget.rs",
2026-06-04T13:05:22.8384136Z               "line": 37
2026-06-04T13:05:22.8384560Z             },
2026-06-04T13:05:22.8384968Z             {
2026-06-04T13:05:22.8385622Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8386071Z               "line": 62
2026-06-04T13:05:22.8386481Z             },
2026-06-04T13:05:22.8386900Z             {
2026-06-04T13:05:22.8387481Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.8387931Z               "line": 156
2026-06-04T13:05:22.8388365Z             },
2026-06-04T13:05:22.8388790Z             {
2026-06-04T13:05:22.8389371Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.8389830Z               "line": 332
2026-06-04T13:05:22.8390248Z             }
2026-06-04T13:05:22.8390658Z           ]
2026-06-04T13:05:22.8391077Z         },
2026-06-04T13:05:22.8391497Z         "int": {
2026-06-04T13:05:22.8391980Z           "complete": false,
2026-06-04T13:05:22.8392433Z           "evidence": []
2026-06-04T13:05:22.8392844Z         },
2026-06-04T13:05:22.8393277Z         "unit": {
2026-06-04T13:05:22.8393747Z           "complete": true,
2026-06-04T13:05:22.8394200Z           "evidence": [
2026-06-04T13:05:22.8394609Z             {
2026-06-04T13:05:22.8395245Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T13:05:22.8395693Z               "line": 292
2026-06-04T13:05:22.8396110Z             },
2026-06-04T13:05:22.8396528Z             {
2026-06-04T13:05:22.8397180Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.8397844Z               "line": 610
2026-06-04T13:05:22.8398260Z             },
2026-06-04T13:05:22.8398683Z             {
2026-06-04T13:05:22.8399510Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.8399966Z               "line": 661
2026-06-04T13:05:22.8400390Z             },
2026-06-04T13:05:22.8400800Z             {
2026-06-04T13:05:22.8401500Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T13:05:22.8401953Z               "line": 365
2026-06-04T13:05:22.8402371Z             },
2026-06-04T13:05:22.8402787Z             {
2026-06-04T13:05:22.8403483Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T13:05:22.8403979Z               "line": 412
2026-06-04T13:05:22.8404465Z             },
2026-06-04T13:05:22.8404943Z             {
2026-06-04T13:05:22.8405617Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8406085Z               "line": 372
2026-06-04T13:05:22.8406544Z             },
2026-06-04T13:05:22.8406951Z             {
2026-06-04T13:05:22.8407589Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8408053Z               "line": 401
2026-06-04T13:05:22.8408477Z             },
2026-06-04T13:05:22.8408887Z             {
2026-06-04T13:05:22.8409577Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8410036Z               "line": 434
2026-06-04T13:05:22.8410454Z             },
2026-06-04T13:05:22.8410871Z             {
2026-06-04T13:05:22.8411508Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8411964Z               "line": 542
2026-06-04T13:05:22.8412389Z             },
2026-06-04T13:05:22.8412805Z             {
2026-06-04T13:05:22.8413448Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8413898Z               "line": 621
2026-06-04T13:05:22.8414323Z             },
2026-06-04T13:05:22.8414730Z             {
2026-06-04T13:05:22.8415374Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8415848Z               "line": 635
2026-06-04T13:05:22.8416266Z             },
2026-06-04T13:05:22.8416701Z             {
2026-06-04T13:05:22.8417347Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8417804Z               "line": 566
2026-06-04T13:05:22.8418223Z             },
2026-06-04T13:05:22.8418648Z             {
2026-06-04T13:05:22.8419281Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.8419734Z               "line": 327
2026-06-04T13:05:22.8420156Z             },
2026-06-04T13:05:22.8420567Z             {
2026-06-04T13:05:22.8421109Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.8421556Z               "line": 1116
2026-06-04T13:05:22.8421971Z             }
2026-06-04T13:05:22.8422388Z           ]
2026-06-04T13:05:22.8422796Z         }
2026-06-04T13:05:22.8423214Z       }
2026-06-04T13:05:22.8423620Z     },
2026-06-04T13:05:22.8424031Z     {
2026-06-04T13:05:22.8424501Z       "id": "REQ-INST-4",
2026-06-04T13:05:22.8429590Z       "title": "active to dormant/suspended fires a transition echo commune",
2026-06-04T13:05:22.8430194Z       "requiredStages": [
2026-06-04T13:05:22.8430625Z         "impl",
2026-06-04T13:05:22.8431055Z         "unit"
2026-06-04T13:05:22.8431462Z       ],
2026-06-04T13:05:22.8431899Z       "stages": {
2026-06-04T13:05:22.8432324Z         "doc": {
2026-06-04T13:05:22.8432797Z           "complete": false,
2026-06-04T13:05:22.8433261Z           "evidence": []
2026-06-04T13:05:22.8433671Z         },
2026-06-04T13:05:22.8434108Z         "impl": {
2026-06-04T13:05:22.8434569Z           "complete": true,
2026-06-04T13:05:22.8435024Z           "evidence": [
2026-06-04T13:05:22.8435437Z             {
2026-06-04T13:05:22.8436112Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.8436571Z               "line": 273
2026-06-04T13:05:22.8436986Z             },
2026-06-04T13:05:22.8437404Z             {
2026-06-04T13:05:22.8438301Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8438757Z               "line": 201
2026-06-04T13:05:22.8439225Z             },
2026-06-04T13:05:22.8439778Z             {
2026-06-04T13:05:22.8440428Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8440876Z               "line": 233
2026-06-04T13:05:22.8441303Z             },
2026-06-04T13:05:22.8441719Z             {
2026-06-04T13:05:22.8442356Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8442803Z               "line": 269
2026-06-04T13:05:22.8443231Z             }
2026-06-04T13:05:22.8443655Z           ]
2026-06-04T13:05:22.8444070Z         },
2026-06-04T13:05:22.8444501Z         "int": {
2026-06-04T13:05:22.8444968Z           "complete": false,
2026-06-04T13:05:22.8445428Z           "evidence": []
2026-06-04T13:05:22.8445830Z         },
2026-06-04T13:05:22.8446266Z         "unit": {
2026-06-04T13:05:22.8446740Z           "complete": true,
2026-06-04T13:05:22.8447199Z           "evidence": [
2026-06-04T13:05:22.8447620Z             {
2026-06-04T13:05:22.8448271Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:22.8448737Z               "line": 656
2026-06-04T13:05:22.8449152Z             },
2026-06-04T13:05:22.8449613Z             {
2026-06-04T13:05:22.8450258Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8450707Z               "line": 452
2026-06-04T13:05:22.8451128Z             },
2026-06-04T13:05:22.8451538Z             {
2026-06-04T13:05:22.8452179Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8452625Z               "line": 517
2026-06-04T13:05:22.8453048Z             },
2026-06-04T13:05:22.8453467Z             {
2026-06-04T13:05:22.8454099Z               "path": "crates/spt-daemon/src/resting.rs",
2026-06-04T13:05:22.8454558Z               "line": 584
2026-06-04T13:05:22.8454969Z             }
2026-06-04T13:05:22.8455388Z           ]
2026-06-04T13:05:22.8455794Z         }
2026-06-04T13:05:22.8456233Z       }
2026-06-04T13:05:22.8456652Z     },
2026-06-04T13:05:22.8457055Z     {
2026-06-04T13:05:22.8457522Z       "id": "REQ-INST-5",
2026-06-04T13:05:22.8458536Z       "title": "Two-tier context sync (live to all, project to same-project)",
2026-06-04T13:05:22.8459024Z       "requiredStages": [
2026-06-04T13:05:22.8459483Z         "impl",
2026-06-04T13:05:22.8459910Z         "unit"
2026-06-04T13:05:22.8460323Z       ],
2026-06-04T13:05:22.8460748Z       "stages": {
2026-06-04T13:05:22.8461178Z         "doc": {
2026-06-04T13:05:22.8461643Z           "complete": false,
2026-06-04T13:05:22.8462100Z           "evidence": []
2026-06-04T13:05:22.8462521Z         },
2026-06-04T13:05:22.8462952Z         "impl": {
2026-06-04T13:05:22.8463420Z           "complete": true,
2026-06-04T13:05:22.8463867Z           "evidence": [
2026-06-04T13:05:22.8464287Z             {
2026-06-04T13:05:22.8464928Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T13:05:22.8465376Z               "line": 39
2026-06-04T13:05:22.8465808Z             },
2026-06-04T13:05:22.8466233Z             {
2026-06-04T13:05:22.8466843Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.8467297Z               "line": 68
2026-06-04T13:05:22.8467725Z             },
2026-06-04T13:05:22.8468137Z             {
2026-06-04T13:05:22.8468747Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.8469212Z               "line": 93
2026-06-04T13:05:22.8469641Z             },
2026-06-04T13:05:22.8470065Z             {
2026-06-04T13:05:22.8470656Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.8471112Z               "line": 160
2026-06-04T13:05:22.8471528Z             },
2026-06-04T13:05:22.8471948Z             {
2026-06-04T13:05:22.8472539Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.8473000Z               "line": 271
2026-06-04T13:05:22.8473426Z             }
2026-06-04T13:05:22.8473834Z           ]
2026-06-04T13:05:22.8474429Z         },
2026-06-04T13:05:22.8474858Z         "int": {
2026-06-04T13:05:22.8475336Z           "complete": true,
2026-06-04T13:05:22.8475782Z           "evidence": [
2026-06-04T13:05:22.8476338Z             {
2026-06-04T13:05:22.8477021Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T13:05:22.8477470Z               "line": 142
2026-06-04T13:05:22.8477895Z             },
2026-06-04T13:05:22.8478305Z             {
2026-06-04T13:05:22.8478988Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T13:05:22.8479487Z               "line": 102
2026-06-04T13:05:22.8479901Z             }
2026-06-04T13:05:22.8480319Z           ]
2026-06-04T13:05:22.8480725Z         },
2026-06-04T13:05:22.8481162Z         "unit": {
2026-06-04T13:05:22.8481624Z           "complete": true,
2026-06-04T13:05:22.8482082Z           "evidence": [
2026-06-04T13:05:22.8482503Z             {
2026-06-04T13:05:22.8483105Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.8483579Z               "line": 461
2026-06-04T13:05:22.8483994Z             },
2026-06-04T13:05:22.8484416Z             {
2026-06-04T13:05:22.8485014Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.8485479Z               "line": 495
2026-06-04T13:05:22.8485897Z             },
2026-06-04T13:05:22.8486306Z             {
2026-06-04T13:05:22.8486943Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T13:05:22.8487394Z               "line": 199
2026-06-04T13:05:22.8487819Z             }
2026-06-04T13:05:22.8488230Z           ]
2026-06-04T13:05:22.8488650Z         }
2026-06-04T13:05:22.8489074Z       }
2026-06-04T13:05:22.8489515Z     },
2026-06-04T13:05:22.8489932Z     {
2026-06-04T13:05:22.8490387Z       "id": "REQ-INST-6",
2026-06-04T13:05:22.8491450Z       "title": "Deferred messages not delivered to dormant/suspended instances",
2026-06-04T13:05:22.8491933Z       "requiredStages": [],
2026-06-04T13:05:22.8492367Z       "stages": {
2026-06-04T13:05:22.8492798Z         "doc": {
2026-06-04T13:05:22.8493282Z           "complete": false,
2026-06-04T13:05:22.8493737Z           "evidence": []
2026-06-04T13:05:22.8494144Z         },
2026-06-04T13:05:22.8494593Z         "impl": {
2026-06-04T13:05:22.8495055Z           "complete": false,
2026-06-04T13:05:22.8495519Z           "evidence": []
2026-06-04T13:05:22.8495942Z         },
2026-06-04T13:05:22.8496363Z         "int": {
2026-06-04T13:05:22.8496835Z           "complete": false,
2026-06-04T13:05:22.8497279Z           "evidence": []
2026-06-04T13:05:22.8497698Z         },
2026-06-04T13:05:22.8498122Z         "unit": {
2026-06-04T13:05:22.8498606Z           "complete": false,
2026-06-04T13:05:22.8499063Z           "evidence": []
2026-06-04T13:05:22.8499563Z         }
2026-06-04T13:05:22.8500052Z       }
2026-06-04T13:05:22.8500471Z     },
2026-06-04T13:05:22.8500885Z     {
2026-06-04T13:05:22.8501347Z       "id": "REQ-INST-7",
2026-06-04T13:05:22.8502113Z       "title": "Subnet registry + bare-id resolution policy",
2026-06-04T13:05:22.8502623Z       "requiredStages": [
2026-06-04T13:05:22.8503045Z         "impl",
2026-06-04T13:05:22.8503471Z         "unit"
2026-06-04T13:05:22.8503891Z       ],
2026-06-04T13:05:22.8504323Z       "stages": {
2026-06-04T13:05:22.8504741Z         "doc": {
2026-06-04T13:05:22.8505215Z           "complete": false,
2026-06-04T13:05:22.8505673Z           "evidence": []
2026-06-04T13:05:22.8506094Z         },
2026-06-04T13:05:22.8510677Z         "impl": {
2026-06-04T13:05:22.8511254Z           "complete": true,
2026-06-04T13:05:22.8511720Z           "evidence": [
2026-06-04T13:05:22.8512140Z             {
2026-06-04T13:05:22.8512801Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T13:05:22.8513262Z               "line": 361
2026-06-04T13:05:22.8513679Z             },
2026-06-04T13:05:22.8514093Z             {
2026-06-04T13:05:22.8514737Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T13:05:22.8515186Z               "line": 40
2026-06-04T13:05:22.8515599Z             },
2026-06-04T13:05:22.8516314Z             {
2026-06-04T13:05:22.8517026Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T13:05:22.8517608Z               "line": 27
2026-06-04T13:05:22.8518037Z             },
2026-06-04T13:05:22.8518450Z             {
2026-06-04T13:05:22.8519152Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T13:05:22.8519667Z               "line": 120
2026-06-04T13:05:22.8520086Z             },
2026-06-04T13:05:22.8520503Z             {
2026-06-04T13:05:22.8521192Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T13:05:22.8521642Z               "line": 197
2026-06-04T13:05:22.8522056Z             },
2026-06-04T13:05:22.8522478Z             {
2026-06-04T13:05:22.8523106Z               "path": "crates/spt-net/src/net/ndjson.rs",
2026-06-04T13:05:22.8523559Z               "line": 56
2026-06-04T13:05:22.8523980Z             },
2026-06-04T13:05:22.8524395Z             {
2026-06-04T13:05:22.8525045Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8525505Z               "line": 41
2026-06-04T13:05:22.8525930Z             },
2026-06-04T13:05:22.8526359Z             {
2026-06-04T13:05:22.8527030Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T13:05:22.8527484Z               "line": 27
2026-06-04T13:05:22.8527898Z             },
2026-06-04T13:05:22.8528318Z             {
2026-06-04T13:05:22.8528980Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T13:05:22.8529577Z               "line": 59
2026-06-04T13:05:22.8530004Z             },
2026-06-04T13:05:22.8530429Z             {
2026-06-04T13:05:22.8531104Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T13:05:22.8531552Z               "line": 68
2026-06-04T13:05:22.8531977Z             },
2026-06-04T13:05:22.8532386Z             {
2026-06-04T13:05:22.8533023Z               "path": "crates/spt-store/src/registry.rs",
2026-06-04T13:05:22.8533464Z               "line": 129
2026-06-04T13:05:22.8533904Z             }
2026-06-04T13:05:22.8534327Z           ]
2026-06-04T13:05:22.8534751Z         },
2026-06-04T13:05:22.8535178Z         "int": {
2026-06-04T13:05:22.8535651Z           "complete": true,
2026-06-04T13:05:22.8536100Z           "evidence": [
2026-06-04T13:05:22.8536516Z             {
2026-06-04T13:05:22.8537189Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T13:05:22.8537641Z               "line": 102
2026-06-04T13:05:22.8538049Z             }
2026-06-04T13:05:22.8538472Z           ]
2026-06-04T13:05:22.8538881Z         },
2026-06-04T13:05:22.8539353Z         "unit": {
2026-06-04T13:05:22.8539822Z           "complete": true,
2026-06-04T13:05:22.8540277Z           "evidence": [
2026-06-04T13:05:22.8540691Z             {
2026-06-04T13:05:22.8541391Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T13:05:22.8541843Z               "line": 342
2026-06-04T13:05:22.8542254Z             },
2026-06-04T13:05:22.8542676Z             {
2026-06-04T13:05:22.8543383Z               "path": "crates/spt-daemon/src/registryhost.rs",
2026-06-04T13:05:22.8543839Z               "line": 458
2026-06-04T13:05:22.8544283Z             },
2026-06-04T13:05:22.8544703Z             {
2026-06-04T13:05:22.8545487Z               "path": "crates/spt-daemon/tests/replicate.rs",
2026-06-04T13:05:22.8545960Z               "line": 83
2026-06-04T13:05:22.8546385Z             },
2026-06-04T13:05:22.8546802Z             {
2026-06-04T13:05:22.8547453Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8547908Z               "line": 482
2026-06-04T13:05:22.8548323Z             },
2026-06-04T13:05:22.8548750Z             {
2026-06-04T13:05:22.8549444Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8549908Z               "line": 493
2026-06-04T13:05:22.8550329Z             },
2026-06-04T13:05:22.8550739Z             {
2026-06-04T13:05:22.8551394Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8552087Z               "line": 502
2026-06-04T13:05:22.8552513Z             },
2026-06-04T13:05:22.8552929Z             {
2026-06-04T13:05:22.8553799Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T13:05:22.8554259Z               "line": 90
2026-06-04T13:05:22.8554684Z             },
2026-06-04T13:05:22.8555104Z             {
2026-06-04T13:05:22.8555770Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T13:05:22.8556226Z               "line": 105
2026-06-04T13:05:22.8556644Z             },
2026-06-04T13:05:22.8557067Z             {
2026-06-04T13:05:22.8557740Z               "path": "crates/spt-net/src/net/replicate.rs",
2026-06-04T13:05:22.8558188Z               "line": 131
2026-06-04T13:05:22.8558613Z             }
2026-06-04T13:05:22.8559027Z           ]
2026-06-04T13:05:22.8559501Z         }
2026-06-04T13:05:22.8559924Z       }
2026-06-04T13:05:22.8560340Z     },
2026-06-04T13:05:22.8560762Z     {
2026-06-04T13:05:22.8561217Z       "id": "REQ-INST-8",
2026-06-04T13:05:22.8562078Z       "title": "Remote-control mode distinct from local operation",
2026-06-04T13:05:22.8562552Z       "requiredStages": [
2026-06-04T13:05:22.8562995Z         "impl",
2026-06-04T13:05:22.8563411Z         "unit"
2026-06-04T13:05:22.8563832Z       ],
2026-06-04T13:05:22.8564274Z       "stages": {
2026-06-04T13:05:22.8564695Z         "doc": {
2026-06-04T13:05:22.8565173Z           "complete": false,
2026-06-04T13:05:22.8565622Z           "evidence": []
2026-06-04T13:05:22.8566039Z         },
2026-06-04T13:05:22.8566466Z         "impl": {
2026-06-04T13:05:22.8566945Z           "complete": true,
2026-06-04T13:05:22.8567392Z           "evidence": [
2026-06-04T13:05:22.8567810Z             {
2026-06-04T13:05:22.8568444Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T13:05:22.8568886Z               "line": 98
2026-06-04T13:05:22.8569352Z             },
2026-06-04T13:05:22.8569764Z             {
2026-06-04T13:05:22.8570402Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T13:05:22.8570879Z               "line": 202
2026-06-04T13:05:22.8571296Z             },
2026-06-04T13:05:22.8571715Z             {
2026-06-04T13:05:22.8572352Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T13:05:22.8572803Z               "line": 220
2026-06-04T13:05:22.8573215Z             },
2026-06-04T13:05:22.8573638Z             {
2026-06-04T13:05:22.8574271Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T13:05:22.8574715Z               "line": 35
2026-06-04T13:05:22.8575136Z             }
2026-06-04T13:05:22.8575553Z           ]
2026-06-04T13:05:22.8575965Z         },
2026-06-04T13:05:22.8576387Z         "int": {
2026-06-04T13:05:22.8576862Z           "complete": true,
2026-06-04T13:05:22.8577312Z           "evidence": [
2026-06-04T13:05:22.8577726Z             {
2026-06-04T13:05:22.8578404Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T13:05:22.8578859Z               "line": 375
2026-06-04T13:05:22.8579359Z             }
2026-06-04T13:05:22.8579785Z           ]
2026-06-04T13:05:22.8580201Z         },
2026-06-04T13:05:22.8580633Z         "unit": {
2026-06-04T13:05:22.8581108Z           "complete": true,
2026-06-04T13:05:22.8581562Z           "evidence": [
2026-06-04T13:05:22.8581974Z             {
2026-06-04T13:05:22.8582627Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T13:05:22.8583074Z               "line": 172
2026-06-04T13:05:22.8583499Z             },
2026-06-04T13:05:22.8583915Z             {
2026-06-04T13:05:22.8584553Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T13:05:22.8585005Z               "line": 226
2026-06-04T13:05:22.8585416Z             },
2026-06-04T13:05:22.8585830Z             {
2026-06-04T13:05:22.8586455Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T13:05:22.8586905Z               "line": 70
2026-06-04T13:05:22.8587332Z             },
2026-06-04T13:05:22.8587741Z             {
2026-06-04T13:05:22.8588382Z               "path": "crates/spt-net/src/net/attach.rs",
2026-06-04T13:05:22.8589021Z               "line": 101
2026-06-04T13:05:22.8589507Z             }
2026-06-04T13:05:22.8594229Z           ]
2026-06-04T13:05:22.8594766Z         }
2026-06-04T13:05:22.8595190Z       }
2026-06-04T13:05:22.8595594Z     },
2026-06-04T13:05:22.8596002Z     {
2026-06-04T13:05:22.8596463Z       "id": "REQ-INST-9",
2026-06-04T13:05:22.8597538Z       "title": "Multi-subnet membership (same-user N subnets; cross-user seam)",
2026-06-04T13:05:22.8598011Z       "requiredStages": [
2026-06-04T13:05:22.8598433Z         "impl",
2026-06-04T13:05:22.8598859Z         "unit"
2026-06-04T13:05:22.8599353Z       ],
2026-06-04T13:05:22.8599799Z       "stages": {
2026-06-04T13:05:22.8600218Z         "doc": {
2026-06-04T13:05:22.8600696Z           "complete": false,
2026-06-04T13:05:22.8601143Z           "evidence": []
2026-06-04T13:05:22.8601571Z         },
2026-06-04T13:05:22.8602004Z         "impl": {
2026-06-04T13:05:22.8602465Z           "complete": true,
2026-06-04T13:05:22.8602956Z           "evidence": [
2026-06-04T13:05:22.8603365Z             {
2026-06-04T13:05:22.8604017Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8604477Z               "line": 198
2026-06-04T13:05:22.8604899Z             }
2026-06-04T13:05:22.8605316Z           ]
2026-06-04T13:05:22.8605729Z         },
2026-06-04T13:05:22.8606161Z         "int": {
2026-06-04T13:05:22.8606624Z           "complete": false,
2026-06-04T13:05:22.8607082Z           "evidence": []
2026-06-04T13:05:22.8607499Z         },
2026-06-04T13:05:22.8607932Z         "unit": {
2026-06-04T13:05:22.8608407Z           "complete": true,
2026-06-04T13:05:22.8608851Z           "evidence": [
2026-06-04T13:05:22.8609313Z             {
2026-06-04T13:05:22.8609955Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8610411Z               "line": 652
2026-06-04T13:05:22.8610821Z             },
2026-06-04T13:05:22.8611238Z             {
2026-06-04T13:05:22.8611911Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8612361Z               "line": 661
2026-06-04T13:05:22.8612779Z             },
2026-06-04T13:05:22.8613200Z             {
2026-06-04T13:05:22.8613842Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8614302Z               "line": 675
2026-06-04T13:05:22.8614721Z             },
2026-06-04T13:05:22.8615142Z             {
2026-06-04T13:05:22.8615778Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8616225Z               "line": 685
2026-06-04T13:05:22.8616641Z             },
2026-06-04T13:05:22.8617058Z             {
2026-06-04T13:05:22.8617726Z               "path": "crates/spt-net/src/net/registry.rs",
2026-06-04T13:05:22.8618267Z               "line": 704
2026-06-04T13:05:22.8618824Z             }
2026-06-04T13:05:22.8619502Z           ]
2026-06-04T13:05:22.8620188Z         }
2026-06-04T13:05:22.8620656Z       }
2026-06-04T13:05:22.8621122Z     },
2026-06-04T13:05:22.8621645Z     {
2026-06-04T13:05:22.8622195Z       "id": "REQ-INSTALL-1",
2026-06-04T13:05:22.8623419Z       "title": "Two install paths; signed one-line script; OS-service registration",
2026-06-04T13:05:22.8624014Z       "requiredStages": [],
2026-06-04T13:05:22.8624500Z       "stages": {
2026-06-04T13:05:22.8624964Z         "doc": {
2026-06-04T13:05:22.8625485Z           "complete": false,
2026-06-04T13:05:22.8626022Z           "evidence": []
2026-06-04T13:05:22.8626502Z         },
2026-06-04T13:05:22.8626996Z         "impl": {
2026-06-04T13:05:22.8627508Z           "complete": false,
2026-06-04T13:05:22.8628007Z           "evidence": []
2026-06-04T13:05:22.8628475Z         },
2026-06-04T13:05:22.8628969Z         "int": {
2026-06-04T13:05:22.8629587Z           "complete": false,
2026-06-04T13:05:22.8630128Z           "evidence": []
2026-06-04T13:05:22.8630604Z         },
2026-06-04T13:05:22.8631202Z         "unit": {
2026-06-04T13:05:22.8631723Z           "complete": false,
2026-06-04T13:05:22.8632737Z           "evidence": []
2026-06-04T13:05:22.8633221Z         }
2026-06-04T13:05:22.8633704Z       }
2026-06-04T13:05:22.8641466Z     },
2026-06-04T13:05:22.8642450Z     {
2026-06-04T13:05:22.8642969Z       "id": "REQ-INSTALL-2",
2026-06-04T13:05:22.8643770Z       "title": "Marketplace-repackaging-friendly install",
2026-06-04T13:05:22.8644260Z       "requiredStages": [],
2026-06-04T13:05:22.8644711Z       "stages": {
2026-06-04T13:05:22.8645161Z         "doc": {
2026-06-04T13:05:22.8645652Z           "complete": false,
2026-06-04T13:05:22.8646126Z           "evidence": []
2026-06-04T13:05:22.8646550Z         },
2026-06-04T13:05:22.8646999Z         "impl": {
2026-06-04T13:05:22.8647494Z           "complete": false,
2026-06-04T13:05:22.8648014Z           "evidence": []
2026-06-04T13:05:22.8648453Z         },
2026-06-04T13:05:22.8648909Z         "int": {
2026-06-04T13:05:22.8649695Z           "complete": false,
2026-06-04T13:05:22.8650341Z           "evidence": []
2026-06-04T13:05:22.8650787Z         },
2026-06-04T13:05:22.8651278Z         "unit": {
2026-06-04T13:05:22.8651778Z           "complete": false,
2026-06-04T13:05:22.8652239Z           "evidence": []
2026-06-04T13:05:22.8652696Z         }
2026-06-04T13:05:22.8653133Z       }
2026-06-04T13:05:22.8653558Z     },
2026-06-04T13:05:22.8653981Z     {
2026-06-04T13:05:22.8654466Z       "id": "REQ-INSTALL-3",
2026-06-04T13:05:22.8655264Z       "title": "Idempotent + interactive-optional first run",
2026-06-04T13:05:22.8655756Z       "requiredStages": [],
2026-06-04T13:05:22.8656209Z       "stages": {
2026-06-04T13:05:22.8656662Z         "doc": {
2026-06-04T13:05:22.8657160Z           "complete": false,
2026-06-04T13:05:22.8657645Z           "evidence": []
2026-06-04T13:05:22.8658079Z         },
2026-06-04T13:05:22.8658540Z         "impl": {
2026-06-04T13:05:22.8659019Z           "complete": false,
2026-06-04T13:05:22.8659730Z           "evidence": []
2026-06-04T13:05:22.8660335Z         },
2026-06-04T13:05:22.8660782Z         "int": {
2026-06-04T13:05:22.8661299Z           "complete": false,
2026-06-04T13:05:22.8661761Z           "evidence": []
2026-06-04T13:05:22.8662191Z         },
2026-06-04T13:05:22.8662627Z         "unit": {
2026-06-04T13:05:22.8663132Z           "complete": false,
2026-06-04T13:05:22.8663609Z           "evidence": []
2026-06-04T13:05:22.8664043Z         }
2026-06-04T13:05:22.8664491Z       }
2026-06-04T13:05:22.8664931Z     },
2026-06-04T13:05:22.8665380Z     {
2026-06-04T13:05:22.8665866Z       "id": "REQ-INSTALL-4",
2026-06-04T13:05:22.8670154Z       "title": "Adapter registration lifecycle: spt adapter add (--github, manifest-first, install-is-first-update) + soft-deregister remove + optional manifest uninstall template; node-local registered-adapter set self-update ripples over",
2026-06-04T13:05:22.8670727Z       "requiredStages": [],
2026-06-04T13:05:22.8671175Z       "stages": {
2026-06-04T13:05:22.8671618Z         "doc": {
2026-06-04T13:05:22.8672092Z           "complete": false,
2026-06-04T13:05:22.8672563Z           "evidence": []
2026-06-04T13:05:22.8673019Z         },
2026-06-04T13:05:22.8673451Z         "impl": {
2026-06-04T13:05:22.8673938Z           "complete": false,
2026-06-04T13:05:22.8674420Z           "evidence": []
2026-06-04T13:05:22.8674848Z         },
2026-06-04T13:05:22.8675276Z         "int": {
2026-06-04T13:05:22.8675758Z           "complete": false,
2026-06-04T13:05:22.8676226Z           "evidence": []
2026-06-04T13:05:22.8676646Z         },
2026-06-04T13:05:22.8677105Z         "unit": {
2026-06-04T13:05:22.8677579Z           "complete": false,
2026-06-04T13:05:22.8678052Z           "evidence": []
2026-06-04T13:05:22.8678489Z         }
2026-06-04T13:05:22.8678944Z       }
2026-06-04T13:05:22.8679448Z     },
2026-06-04T13:05:22.8679877Z     {
2026-06-04T13:05:22.8680390Z       "id": "REQ-MANIFEST-1",
2026-06-04T13:05:22.8681493Z       "title": "Per-adapter manifest with adapter_name and min_spt_core_version",
2026-06-04T13:05:22.8681999Z       "requiredStages": [
2026-06-04T13:05:22.8682432Z         "doc",
2026-06-04T13:05:22.8683245Z         "impl",
2026-06-04T13:05:22.8683695Z         "unit"
2026-06-04T13:05:22.8684121Z       ],
2026-06-04T13:05:22.8684578Z       "stages": {
2026-06-04T13:05:22.8685265Z         "doc": {
2026-06-04T13:05:22.8685763Z           "complete": true,
2026-06-04T13:05:22.8686232Z           "evidence": [
2026-06-04T13:05:22.8686678Z             {
2026-06-04T13:05:22.8687228Z               "path": "docs/MANIFEST.md",
2026-06-04T13:05:22.8693558Z               "line": 19
2026-06-04T13:05:22.8694183Z             }
2026-06-04T13:05:22.8694599Z           ]
2026-06-04T13:05:22.8695030Z         },
2026-06-04T13:05:22.8695474Z         "impl": {
2026-06-04T13:05:22.8695957Z           "complete": true,
2026-06-04T13:05:22.8696409Z           "evidence": [
2026-06-04T13:05:22.8696842Z             {
2026-06-04T13:05:22.8697524Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.8697970Z               "line": 18
2026-06-04T13:05:22.8698386Z             }
2026-06-04T13:05:22.8698803Z           ]
2026-06-04T13:05:22.8699495Z         },
2026-06-04T13:05:22.8699968Z         "int": {
2026-06-04T13:05:22.8700609Z           "complete": false,
2026-06-04T13:05:22.8701202Z           "evidence": []
2026-06-04T13:05:22.8701619Z         },
2026-06-04T13:05:22.8702060Z         "unit": {
2026-06-04T13:05:22.8702535Z           "complete": true,
2026-06-04T13:05:22.8702994Z           "evidence": [
2026-06-04T13:05:22.8703424Z             {
2026-06-04T13:05:22.8704109Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.8704575Z               "line": 706
2026-06-04T13:05:22.8704995Z             },
2026-06-04T13:05:22.8705418Z             {
2026-06-04T13:05:22.8706100Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.8706580Z               "line": 802
2026-06-04T13:05:22.8707025Z             },
2026-06-04T13:05:22.8707456Z             {
2026-06-04T13:05:22.8708167Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.8708667Z               "line": 814
2026-06-04T13:05:22.8709120Z             },
2026-06-04T13:05:22.8709766Z             {
2026-06-04T13:05:22.8710609Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.8711122Z               "line": 822
2026-06-04T13:05:22.8711560Z             },
2026-06-04T13:05:22.8712003Z             {
2026-06-04T13:05:22.8712679Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.8713150Z               "line": 839
2026-06-04T13:05:22.8713586Z             },
2026-06-04T13:05:22.8714031Z             {
2026-06-04T13:05:22.8714716Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.8715182Z               "line": 853
2026-06-04T13:05:22.8715621Z             },
2026-06-04T13:05:22.8716055Z             {
2026-06-04T13:05:22.8716747Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.8717205Z               "line": 868
2026-06-04T13:05:22.8717656Z             },
2026-06-04T13:05:22.8718113Z             {
2026-06-04T13:05:22.8718777Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.8719433Z               "line": 883
2026-06-04T13:05:22.8719913Z             },
2026-06-04T13:05:22.8720372Z             {
2026-06-04T13:05:22.8721074Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.8721590Z               "line": 898
2026-06-04T13:05:22.8722086Z             },
2026-06-04T13:05:22.8722549Z             {
2026-06-04T13:05:22.8723262Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.8723750Z               "line": 909
2026-06-04T13:05:22.8724211Z             }
2026-06-04T13:05:22.8724674Z           ]
2026-06-04T13:05:22.8725153Z         }
2026-06-04T13:05:22.8725622Z       }
2026-06-04T13:05:22.8726055Z     },
2026-06-04T13:05:22.8726515Z     {
2026-06-04T13:05:22.8727032Z       "id": "REQ-MIGRATE-1",
2026-06-04T13:05:22.8728080Z       "title": "Auto-detect and migrate a legacy claude_skill_owl install",
2026-06-04T13:05:22.8729152Z       "requiredStages": [],
2026-06-04T13:05:22.8729844Z       "stages": {
2026-06-04T13:05:22.8730298Z         "doc": {
2026-06-04T13:05:22.8730998Z           "complete": false,
2026-06-04T13:05:22.8731473Z           "evidence": []
2026-06-04T13:05:22.8731910Z         },
2026-06-04T13:05:22.8732367Z         "impl": {
2026-06-04T13:05:22.8732843Z           "complete": false,
2026-06-04T13:05:22.8733321Z           "evidence": []
2026-06-04T13:05:22.8733765Z         },
2026-06-04T13:05:22.8734212Z         "int": {
2026-06-04T13:05:22.8734699Z           "complete": false,
2026-06-04T13:05:22.8735160Z           "evidence": []
2026-06-04T13:05:22.8735584Z         },
2026-06-04T13:05:22.8736019Z         "unit": {
2026-06-04T13:05:22.8736520Z           "complete": false,
2026-06-04T13:05:22.8737002Z           "evidence": []
2026-06-04T13:05:22.8737446Z         }
2026-06-04T13:05:22.8737896Z       }
2026-06-04T13:05:22.8738321Z     },
2026-06-04T13:05:22.8738753Z     {
2026-06-04T13:05:22.8739471Z       "id": "REQ-MSG-1",
2026-06-04T13:05:22.8742575Z       "title": "Local message delivery: TCP-first to a registered address, spool fallback when offline; id->address via registry (stale-clean first); reply routing (__REPLY_TO__)",
2026-06-04T13:05:22.8743149Z       "requiredStages": [
2026-06-04T13:05:22.8743594Z         "impl",
2026-06-04T13:05:22.8744048Z         "unit",
2026-06-04T13:05:22.8744476Z         "int"
2026-06-04T13:05:22.8744904Z       ],
2026-06-04T13:05:22.8745338Z       "stages": {
2026-06-04T13:05:22.8745784Z         "doc": {
2026-06-04T13:05:22.8746288Z           "complete": false,
2026-06-04T13:05:22.8746774Z           "evidence": []
2026-06-04T13:05:22.8747265Z         },
2026-06-04T13:05:22.8747737Z         "impl": {
2026-06-04T13:05:22.8748227Z           "complete": true,
2026-06-04T13:05:22.8748682Z           "evidence": [
2026-06-04T13:05:22.8749122Z             {
2026-06-04T13:05:22.8749840Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8750328Z               "line": 28
2026-06-04T13:05:22.8750794Z             },
2026-06-04T13:05:22.8751224Z             {
2026-06-04T13:05:22.8751850Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8752362Z               "line": 94
2026-06-04T13:05:22.8752805Z             },
2026-06-04T13:05:22.8753243Z             {
2026-06-04T13:05:22.8753884Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8754383Z               "line": 127
2026-06-04T13:05:22.8754819Z             },
2026-06-04T13:05:22.8755290Z             {
2026-06-04T13:05:22.8755928Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8756409Z               "line": 149
2026-06-04T13:05:22.8756862Z             },
2026-06-04T13:05:22.8757294Z             {
2026-06-04T13:05:22.8757920Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8758378Z               "line": 174
2026-06-04T13:05:22.8758832Z             },
2026-06-04T13:05:22.8759341Z             {
2026-06-04T13:05:22.8760011Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T13:05:22.8760485Z               "line": 18
2026-06-04T13:05:22.8760920Z             },
2026-06-04T13:05:22.8761389Z             {
2026-06-04T13:05:22.8761996Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T13:05:22.8762505Z               "line": 13
2026-06-04T13:05:22.8763180Z             },
2026-06-04T13:05:22.8763680Z             {
2026-06-04T13:05:22.8764424Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T13:05:22.8765027Z               "line": 61
2026-06-04T13:05:22.8765579Z             },
2026-06-04T13:05:22.8766091Z             {
2026-06-04T13:05:22.8766763Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T13:05:22.8767259Z               "line": 10
2026-06-04T13:05:22.8767701Z             }
2026-06-04T13:05:22.8768161Z           ]
2026-06-04T13:05:22.8768596Z         },
2026-06-04T13:05:22.8769071Z         "int": {
2026-06-04T13:05:22.8769797Z           "complete": true,
2026-06-04T13:05:22.8770704Z           "evidence": [
2026-06-04T13:05:22.8771160Z             {
2026-06-04T13:05:22.8771946Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T13:05:22.8772637Z               "line": 9
2026-06-04T13:05:22.8773084Z             },
2026-06-04T13:05:22.8773515Z             {
2026-06-04T13:05:22.8774266Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T13:05:22.8774741Z               "line": 66
2026-06-04T13:05:22.8775200Z             },
2026-06-04T13:05:22.8775628Z             {
2026-06-04T13:05:22.8776386Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T13:05:22.8776856Z               "line": 116
2026-06-04T13:05:22.8777303Z             }
2026-06-04T13:05:22.8777731Z           ]
2026-06-04T13:05:22.8778160Z         },
2026-06-04T13:05:22.8778599Z         "unit": {
2026-06-04T13:05:22.8779076Z           "complete": true,
2026-06-04T13:05:22.8779845Z           "evidence": [
2026-06-04T13:05:22.8780532Z             {
2026-06-04T13:05:22.8786968Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8787676Z               "line": 203
2026-06-04T13:05:22.8788338Z             },
2026-06-04T13:05:22.8788833Z             {
2026-06-04T13:05:22.8789716Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8790220Z               "line": 232
2026-06-04T13:05:22.8790657Z             },
2026-06-04T13:05:22.8791109Z             {
2026-06-04T13:05:22.8791734Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8792210Z               "line": 277
2026-06-04T13:05:22.8792661Z             },
2026-06-04T13:05:22.8793134Z             {
2026-06-04T13:05:22.8793803Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8794282Z               "line": 300
2026-06-04T13:05:22.8794736Z             },
2026-06-04T13:05:22.8795165Z             {
2026-06-04T13:05:22.8795817Z               "path": "crates/spt-msg/src/deliver.rs",
2026-06-04T13:05:22.8796331Z               "line": 322
2026-06-04T13:05:22.8796760Z             },
2026-06-04T13:05:22.8797185Z             {
2026-06-04T13:05:22.8797819Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T13:05:22.8798310Z               "line": 203
2026-06-04T13:05:22.8798746Z             },
2026-06-04T13:05:22.8799415Z             {
2026-06-04T13:05:22.8800231Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T13:05:22.8800702Z               "line": 233
2026-06-04T13:05:22.8801154Z             },
2026-06-04T13:05:22.8801590Z             {
2026-06-04T13:05:22.8802236Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T13:05:22.8802705Z               "line": 247
2026-06-04T13:05:22.8803130Z             },
2026-06-04T13:05:22.8803565Z             {
2026-06-04T13:05:22.8804206Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T13:05:22.8804672Z               "line": 259
2026-06-04T13:05:22.8805109Z             },
2026-06-04T13:05:22.8805535Z             {
2026-06-04T13:05:22.8806144Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T13:05:22.8806605Z               "line": 158
2026-06-04T13:05:22.8807064Z             },
2026-06-04T13:05:22.8807488Z             {
2026-06-04T13:05:22.8808089Z               "path": "crates/spt-msg/src/ring.rs",
2026-06-04T13:05:22.8808560Z               "line": 235
2026-06-04T13:05:22.8809007Z             },
2026-06-04T13:05:22.8809695Z             {
2026-06-04T13:05:22.8810478Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T13:05:22.8810962Z               "line": 68
2026-06-04T13:05:22.8811401Z             },
2026-06-04T13:05:22.8811844Z             {
2026-06-04T13:05:22.8812435Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T13:05:22.8812905Z               "line": 74
2026-06-04T13:05:22.8813340Z             },
2026-06-04T13:05:22.8813784Z             {
2026-06-04T13:05:22.8814396Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T13:05:22.8814856Z               "line": 80
2026-06-04T13:05:22.8815814Z             },
2026-06-04T13:05:22.8816245Z             {
2026-06-04T13:05:22.8816843Z               "path": "crates/spt-msg/src/wire.rs",
2026-06-04T13:05:22.8817499Z               "line": 99
2026-06-04T13:05:22.8817951Z             }
2026-06-04T13:05:22.8818384Z           ]
2026-06-04T13:05:22.8818810Z         }
2026-06-04T13:05:22.8819454Z       }
2026-06-04T13:05:22.8820041Z     },
2026-06-04T13:05:22.8820497Z     {
2026-06-04T13:05:22.8820998Z       "id": "REQ-MSG-2",
2026-06-04T13:05:22.8822653Z       "title": "spt binary CLI surface: send/ring/ready/poll/list/stop/whoami, stable arg shapes + exit codes",
2026-06-04T13:05:22.8823206Z       "requiredStages": [
2026-06-04T13:05:22.8823664Z         "impl",
2026-06-04T13:05:22.8824115Z         "unit"
2026-06-04T13:05:22.8824553Z       ],
2026-06-04T13:05:22.8825025Z       "stages": {
2026-06-04T13:05:22.8825476Z         "doc": {
2026-06-04T13:05:22.8825956Z           "complete": false,
2026-06-04T13:05:22.8826435Z           "evidence": []
2026-06-04T13:05:22.8826901Z         },
2026-06-04T13:05:22.8827353Z         "impl": {
2026-06-04T13:05:22.8827832Z           "complete": true,
2026-06-04T13:05:22.8828326Z           "evidence": [
2026-06-04T13:05:22.8828775Z             {
2026-06-04T13:05:22.8829434Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.8829946Z               "line": 11
2026-06-04T13:05:22.8830409Z             },
2026-06-04T13:05:22.8830864Z             {
2026-06-04T13:05:22.8831440Z               "path": "crates/spt/src/main.rs",
2026-06-04T13:05:22.8831918Z               "line": 8
2026-06-04T13:05:22.8832369Z             }
2026-06-04T13:05:22.8832799Z           ]
2026-06-04T13:05:22.8833249Z         },
2026-06-04T13:05:22.8833693Z         "int": {
2026-06-04T13:05:22.8834188Z           "complete": false,
2026-06-04T13:05:22.8834670Z           "evidence": []
2026-06-04T13:05:22.8835123Z         },
2026-06-04T13:05:22.8835586Z         "unit": {
2026-06-04T13:05:22.8836059Z           "complete": true,
2026-06-04T13:05:22.8836550Z           "evidence": [
2026-06-04T13:05:22.8836981Z             {
2026-06-04T13:05:22.8837549Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.8838029Z               "line": 1100
2026-06-04T13:05:22.8838469Z             },
2026-06-04T13:05:22.8838907Z             {
2026-06-04T13:05:22.8839530Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.8840027Z               "line": 1213
2026-06-04T13:05:22.8840462Z             },
2026-06-04T13:05:22.8840905Z             {
2026-06-04T13:05:22.8841467Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.8841972Z               "line": 1222
2026-06-04T13:05:22.8842447Z             },
2026-06-04T13:05:22.8842891Z             {
2026-06-04T13:05:22.8843492Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.8843970Z               "line": 1234
2026-06-04T13:05:22.8844431Z             }
2026-06-04T13:05:22.8844886Z           ]
2026-06-04T13:05:22.8845337Z         }
2026-06-04T13:05:22.8845798Z       }
2026-06-04T13:05:22.8846226Z     },
2026-06-04T13:05:22.8846665Z     {
2026-06-04T13:05:22.8847137Z       "id": "REQ-MSG-3",
2026-06-04T13:05:22.8849624Z       "title": "Ready-agent lifecycle: register perch (info.json + listener + registry address) on ready, drain spooled backlog on startup, clean teardown",
2026-06-04T13:05:22.8850158Z       "requiredStages": [
2026-06-04T13:05:22.8850621Z         "impl",
2026-06-04T13:05:22.8851073Z         "unit",
2026-06-04T13:05:22.8851506Z         "int"
2026-06-04T13:05:22.8851941Z       ],
2026-06-04T13:05:22.8852394Z       "stages": {
2026-06-04T13:05:22.8852851Z         "doc": {
2026-06-04T13:05:22.8853339Z           "complete": false,
2026-06-04T13:05:22.8853828Z           "evidence": []
2026-06-04T13:05:22.8854287Z         },
2026-06-04T13:05:22.8854755Z         "impl": {
2026-06-04T13:05:22.8855266Z           "complete": true,
2026-06-04T13:05:22.8855751Z           "evidence": [
2026-06-04T13:05:22.8856192Z             {
2026-06-04T13:05:22.8857217Z               "path": "crates/spt-msg/src/listener.rs",
2026-06-04T13:05:22.8857690Z               "line": 19
2026-06-04T13:05:22.8858124Z             },
2026-06-04T13:05:22.8858792Z             {
2026-06-04T13:05:22.8859646Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T13:05:22.8860340Z               "line": 21
2026-06-04T13:05:22.8860782Z             },
2026-06-04T13:05:22.8861217Z             {
2026-06-04T13:05:22.8861824Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T13:05:22.8862296Z               "line": 48
2026-06-04T13:05:22.8862742Z             },
2026-06-04T13:05:22.8863193Z             {
2026-06-04T13:05:22.8863856Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T13:05:22.8864361Z               "line": 106
2026-06-04T13:05:22.8864805Z             }
2026-06-04T13:05:22.8865258Z           ]
2026-06-04T13:05:22.8865705Z         },
2026-06-04T13:05:22.8866149Z         "int": {
2026-06-04T13:05:22.8866656Z           "complete": true,
2026-06-04T13:05:22.8867167Z           "evidence": [
2026-06-04T13:05:22.8867615Z             {
2026-06-04T13:05:22.8868405Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T13:05:22.8868925Z               "line": 10
2026-06-04T13:05:22.8869582Z             },
2026-06-04T13:05:22.8870186Z             {
2026-06-04T13:05:22.8870977Z               "path": "crates/spt-msg/tests/killer_quickstart.rs",
2026-06-04T13:05:22.8871466Z               "line": 66
2026-06-04T13:05:22.8871907Z             }
2026-06-04T13:05:22.8872351Z           ]
2026-06-04T13:05:22.8872780Z         },
2026-06-04T13:05:22.8879045Z         "unit": {
2026-06-04T13:05:22.8879998Z           "complete": true,
2026-06-04T13:05:22.8880499Z           "evidence": [
2026-06-04T13:05:22.8880948Z             {
2026-06-04T13:05:22.8881589Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T13:05:22.8882074Z               "line": 160
2026-06-04T13:05:22.8882516Z             },
2026-06-04T13:05:22.8882973Z             {
2026-06-04T13:05:22.8883641Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T13:05:22.8884165Z               "line": 179
2026-06-04T13:05:22.8884683Z             },
2026-06-04T13:05:22.8885139Z             {
2026-06-04T13:05:22.8885774Z               "path": "crates/spt-msg/src/ready.rs",
2026-06-04T13:05:22.8886252Z               "line": 198
2026-06-04T13:05:22.8886719Z             }
2026-06-04T13:05:22.8887164Z           ]
2026-06-04T13:05:22.8887626Z         }
2026-06-04T13:05:22.8888065Z       }
2026-06-04T13:05:22.8888507Z     },
2026-06-04T13:05:22.8888947Z     {
2026-06-04T13:05:22.8889640Z       "id": "REQ-NET-1",
2026-06-04T13:05:22.8890840Z       "title": "WAN messaging first-class, behind default-on net feature flag",
2026-06-04T13:05:22.8891353Z       "requiredStages": [
2026-06-04T13:05:22.8891844Z         "impl",
2026-06-04T13:05:22.8892293Z         "unit"
2026-06-04T13:05:22.8892758Z       ],
2026-06-04T13:05:22.8893234Z       "stages": {
2026-06-04T13:05:22.8893679Z         "doc": {
2026-06-04T13:05:22.8894213Z           "complete": false,
2026-06-04T13:05:22.8894693Z           "evidence": []
2026-06-04T13:05:22.8895133Z         },
2026-06-04T13:05:22.8895590Z         "impl": {
2026-06-04T13:05:22.8896084Z           "complete": true,
2026-06-04T13:05:22.8896541Z           "evidence": [
2026-06-04T13:05:22.8896989Z             {
2026-06-04T13:05:22.8897670Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T13:05:22.8898120Z               "line": 52
2026-06-04T13:05:22.8898562Z             },
2026-06-04T13:05:22.8898986Z             {
2026-06-04T13:05:22.8900046Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T13:05:22.8900544Z               "line": 448
2026-06-04T13:05:22.8900991Z             },
2026-06-04T13:05:22.8901454Z             {
2026-06-04T13:05:22.8902083Z               "path": "crates/spt-daemon/src/wan.rs",
2026-06-04T13:05:22.8902568Z               "line": 69
2026-06-04T13:05:22.8902999Z             },
2026-06-04T13:05:22.8903951Z             {
2026-06-04T13:05:22.8904640Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8905110Z               "line": 65
2026-06-04T13:05:22.8905766Z             },
2026-06-04T13:05:22.8906186Z             {
2026-06-04T13:05:22.8906886Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8907352Z               "line": 122
2026-06-04T13:05:22.8907806Z             },
2026-06-04T13:05:22.8908249Z             {
2026-06-04T13:05:22.8908924Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8909461Z               "line": 138
2026-06-04T13:05:22.8909896Z             },
2026-06-04T13:05:22.8910327Z             {
2026-06-04T13:05:22.8910994Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8911482Z               "line": 153
2026-06-04T13:05:22.8911929Z             },
2026-06-04T13:05:22.8912359Z             {
2026-06-04T13:05:22.8913049Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8913532Z               "line": 207
2026-06-04T13:05:22.8913979Z             },
2026-06-04T13:05:22.8914402Z             {
2026-06-04T13:05:22.8915084Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8915562Z               "line": 242
2026-06-04T13:05:22.8916004Z             },
2026-06-04T13:05:22.8916437Z             {
2026-06-04T13:05:22.8917090Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8917576Z               "line": 248
2026-06-04T13:05:22.8918010Z             },
2026-06-04T13:05:22.8918465Z             {
2026-06-04T13:05:22.8919207Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8919722Z               "line": 254
2026-06-04T13:05:22.8920180Z             },
2026-06-04T13:05:22.8920612Z             {
2026-06-04T13:05:22.8921292Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8921781Z               "line": 270
2026-06-04T13:05:22.8922253Z             },
2026-06-04T13:05:22.8922765Z             {
2026-06-04T13:05:22.8923547Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8924063Z               "line": 290
2026-06-04T13:05:22.8924518Z             },
2026-06-04T13:05:22.8925010Z             {
2026-06-04T13:05:22.8925716Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T13:05:22.8926200Z               "line": 35
2026-06-04T13:05:22.8926644Z             },
2026-06-04T13:05:22.8927092Z             {
2026-06-04T13:05:22.8927746Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T13:05:22.8928204Z               "line": 82
2026-06-04T13:05:22.8928644Z             },
2026-06-04T13:05:22.8929087Z             {
2026-06-04T13:05:22.8929783Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.8930262Z               "line": 129
2026-06-04T13:05:22.8930728Z             },
2026-06-04T13:05:22.8931183Z             {
2026-06-04T13:05:22.8931775Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.8932287Z               "line": 600
2026-06-04T13:05:22.8932752Z             },
2026-06-04T13:05:22.8933185Z             {
2026-06-04T13:05:22.8933797Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T13:05:22.8934256Z               "line": 17
2026-06-04T13:05:22.8934695Z             }
2026-06-04T13:05:22.8935121Z           ]
2026-06-04T13:05:22.8935571Z         },
2026-06-04T13:05:22.8936011Z         "int": {
2026-06-04T13:05:22.8936493Z           "complete": true,
2026-06-04T13:05:22.8936963Z           "evidence": [
2026-06-04T13:05:22.8937401Z             {
2026-06-04T13:05:22.8938130Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T13:05:22.8938597Z               "line": 314
2026-06-04T13:05:22.8939041Z             }
2026-06-04T13:05:22.8939731Z           ]
2026-06-04T13:05:22.8940369Z         },
2026-06-04T13:05:22.8940830Z         "unit": {
2026-06-04T13:05:22.8941316Z           "complete": true,
2026-06-04T13:05:22.8941908Z           "evidence": [
2026-06-04T13:05:22.8942735Z             {
2026-06-04T13:05:22.8943446Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T13:05:22.8944114Z               "line": 500
2026-06-04T13:05:22.8944563Z             },
2026-06-04T13:05:22.8945023Z             {
2026-06-04T13:05:22.8945712Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T13:05:22.8946209Z               "line": 529
2026-06-04T13:05:22.8946650Z             },
2026-06-04T13:05:22.8947103Z             {
2026-06-04T13:05:22.8947841Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T13:05:22.8948328Z               "line": 517
2026-06-04T13:05:22.8948778Z             },
2026-06-04T13:05:22.8949255Z             {
2026-06-04T13:05:22.8949974Z               "path": "crates/spt-daemon/tests/wanmsg.rs",
2026-06-04T13:05:22.8950461Z               "line": 142
2026-06-04T13:05:22.8950931Z             },
2026-06-04T13:05:22.8951383Z             {
2026-06-04T13:05:22.8952064Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8952606Z               "line": 344
2026-06-04T13:05:22.8953043Z             },
2026-06-04T13:05:22.8953498Z             {
2026-06-04T13:05:22.8954173Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8954650Z               "line": 358
2026-06-04T13:05:22.8955098Z             },
2026-06-04T13:05:22.8955522Z             {
2026-06-04T13:05:22.8956204Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8956671Z               "line": 377
2026-06-04T13:05:22.8957130Z             },
2026-06-04T13:05:22.8957572Z             {
2026-06-04T13:05:22.8958251Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T13:05:22.8958737Z               "line": 106
2026-06-04T13:05:22.8959234Z             },
2026-06-04T13:05:22.8959702Z             {
2026-06-04T13:05:22.8960348Z               "path": "crates/spt-net/src/net/wanmsg.rs",
2026-06-04T13:05:22.8960838Z               "line": 148
2026-06-04T13:05:22.8961301Z             },
2026-06-04T13:05:22.8961739Z             {
2026-06-04T13:05:22.8962362Z               "path": "crates/spt-store/src/spool.rs",
2026-06-04T13:05:22.8962839Z               "line": 445
2026-06-04T13:05:22.8963286Z             },
2026-06-04T13:05:22.8963717Z             {
2026-06-04T13:05:22.8964325Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T13:05:22.8970709Z               "line": 218
2026-06-04T13:05:22.8971371Z             },
2026-06-04T13:05:22.8971807Z             {
2026-06-04T13:05:22.8972398Z               "path": "crates/spt/src/wansend.rs",
2026-06-04T13:05:22.8972870Z               "line": 306
2026-06-04T13:05:22.8973288Z             }
2026-06-04T13:05:22.8973716Z           ]
2026-06-04T13:05:22.8974144Z         }
2026-06-04T13:05:22.8974550Z       }
2026-06-04T13:05:22.8974968Z     },
2026-06-04T13:05:22.8975378Z     {
2026-06-04T13:05:22.8975844Z       "id": "REQ-NET-2",
2026-06-04T13:05:22.8976855Z       "title": "n0 relay default + self-host knob + plain-language disclosure",
2026-06-04T13:05:22.8977396Z       "requiredStages": [
2026-06-04T13:05:22.8977834Z         "impl"
2026-06-04T13:05:22.8978258Z       ],
2026-06-04T13:05:22.8978708Z       "stages": {
2026-06-04T13:05:22.8979136Z         "doc": {
2026-06-04T13:05:22.8979877Z           "complete": false,
2026-06-04T13:05:22.8980394Z           "evidence": []
2026-06-04T13:05:22.8980883Z         },
2026-06-04T13:05:22.8981392Z         "impl": {
2026-06-04T13:05:22.8981918Z           "complete": true,
2026-06-04T13:05:22.8982448Z           "evidence": [
2026-06-04T13:05:22.8982893Z             {
2026-06-04T13:05:22.8983566Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T13:05:22.8984037Z               "line": 49
2026-06-04T13:05:22.8984491Z             },
2026-06-04T13:05:22.8984946Z             {
2026-06-04T13:05:22.8985629Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8986102Z               "line": 39
2026-06-04T13:05:22.8986559Z             },
2026-06-04T13:05:22.8987537Z             {
2026-06-04T13:05:22.8988255Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8988951Z               "line": 49
2026-06-04T13:05:22.8989639Z             },
2026-06-04T13:05:22.8990101Z             {
2026-06-04T13:05:22.8990803Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8991294Z               "line": 122
2026-06-04T13:05:22.8991744Z             },
2026-06-04T13:05:22.8992173Z             {
2026-06-04T13:05:22.8992874Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8993367Z               "line": 138
2026-06-04T13:05:22.8993793Z             },
2026-06-04T13:05:22.8994232Z             {
2026-06-04T13:05:22.8994900Z               "path": "crates/spt-net/src/net/endpoint.rs",
2026-06-04T13:05:22.8995394Z               "line": 153
2026-06-04T13:05:22.8995821Z             }
2026-06-04T13:05:22.8996269Z           ]
2026-06-04T13:05:22.8996704Z         },
2026-06-04T13:05:22.8997171Z         "int": {
2026-06-04T13:05:22.8997661Z           "complete": false,
2026-06-04T13:05:22.8998131Z           "evidence": []
2026-06-04T13:05:22.8998749Z         },
2026-06-04T13:05:22.8999293Z         "unit": {
2026-06-04T13:05:22.8999897Z           "complete": true,
2026-06-04T13:05:22.9000479Z           "evidence": [
2026-06-04T13:05:22.9001002Z             {
2026-06-04T13:05:22.9001903Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T13:05:22.9002421Z               "line": 321
2026-06-04T13:05:22.9002925Z             }
2026-06-04T13:05:22.9003442Z           ]
2026-06-04T13:05:22.9003896Z         }
2026-06-04T13:05:22.9004354Z       }
2026-06-04T13:05:22.9004841Z     },
2026-06-04T13:05:22.9005281Z     {
2026-06-04T13:05:22.9005821Z       "id": "REQ-NET-3",
2026-06-04T13:05:22.9006869Z       "title": "Cross-node Psyche sync over P2P replaces gh-repo-sync",
2026-06-04T13:05:22.9007428Z       "requiredStages": [
2026-06-04T13:05:22.9007897Z         "impl",
2026-06-04T13:05:22.9008401Z         "unit"
2026-06-04T13:05:22.9008877Z       ],
2026-06-04T13:05:22.9009450Z       "stages": {
2026-06-04T13:05:22.9009953Z         "doc": {
2026-06-04T13:05:22.9010529Z           "complete": false,
2026-06-04T13:05:22.9011053Z           "evidence": []
2026-06-04T13:05:22.9011537Z         },
2026-06-04T13:05:22.9012039Z         "impl": {
2026-06-04T13:05:22.9012534Z           "complete": true,
2026-06-04T13:05:22.9013031Z           "evidence": [
2026-06-04T13:05:22.9013487Z             {
2026-06-04T13:05:22.9014178Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.9014707Z               "line": 39
2026-06-04T13:05:22.9015197Z             },
2026-06-04T13:05:22.9015679Z             {
2026-06-04T13:05:22.9016389Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.9016924Z               "line": 159
2026-06-04T13:05:22.9017395Z             },
2026-06-04T13:05:22.9017891Z             {
2026-06-04T13:05:22.9018575Z               "path": "crates/spt-daemon/src/sync.rs",
2026-06-04T13:05:22.9019242Z               "line": 290
2026-06-04T13:05:22.9019759Z             },
2026-06-04T13:05:22.9020257Z             {
2026-06-04T13:05:22.9021002Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T13:05:22.9021557Z               "line": 36
2026-06-04T13:05:22.9022093Z             },
2026-06-04T13:05:22.9022613Z             {
2026-06-04T13:05:22.9023403Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:22.9023931Z               "line": 135
2026-06-04T13:05:22.9024403Z             },
2026-06-04T13:05:22.9024872Z             {
2026-06-04T13:05:22.9025602Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:22.9026111Z               "line": 172
2026-06-04T13:05:22.9026567Z             },
2026-06-04T13:05:22.9027040Z             {
2026-06-04T13:05:22.9027765Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:22.9028275Z               "line": 184
2026-06-04T13:05:22.9029260Z             },
2026-06-04T13:05:22.9029707Z             {
2026-06-04T13:05:22.9030445Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:22.9031137Z               "line": 222
2026-06-04T13:05:22.9031594Z             },
2026-06-04T13:05:22.9032130Z             {
2026-06-04T13:05:22.9032873Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:22.9033396Z               "line": 237
2026-06-04T13:05:22.9033832Z             },
2026-06-04T13:05:22.9034272Z             {
2026-06-04T13:05:22.9034972Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:22.9035477Z               "line": 273
2026-06-04T13:05:22.9035937Z             },
2026-06-04T13:05:22.9036400Z             {
2026-06-04T13:05:22.9037122Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:22.9037601Z               "line": 314
2026-06-04T13:05:22.9038054Z             },
2026-06-04T13:05:22.9038492Z             {
2026-06-04T13:05:22.9039302Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:22.9039792Z               "line": 327
2026-06-04T13:05:22.9040259Z             },
2026-06-04T13:05:22.9040738Z             {
2026-06-04T13:05:22.9041408Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T13:05:22.9041901Z               "line": 29
2026-06-04T13:05:22.9042344Z             },
2026-06-04T13:05:22.9042795Z             {
2026-06-04T13:05:22.9043488Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T13:05:22.9043971Z               "line": 70
2026-06-04T13:05:22.9044447Z             },
2026-06-04T13:05:22.9044889Z             {
2026-06-04T13:05:22.9045600Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T13:05:22.9046105Z               "line": 121
2026-06-04T13:05:22.9046587Z             }
2026-06-04T13:05:22.9047078Z           ]
2026-06-04T13:05:22.9047536Z         },
2026-06-04T13:05:22.9048022Z         "int": {
2026-06-04T13:05:22.9048532Z           "complete": false,
2026-06-04T13:05:22.9049058Z           "evidence": []
2026-06-04T13:05:22.9049590Z         },
2026-06-04T13:05:22.9050221Z         "unit": {
2026-06-04T13:05:22.9050749Z           "complete": true,
2026-06-04T13:05:22.9051216Z           "evidence": [
2026-06-04T13:05:22.9051670Z             {
2026-06-04T13:05:22.9052341Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T13:05:22.9052831Z               "line": 203
2026-06-04T13:05:22.9053259Z             },
2026-06-04T13:05:22.9060580Z             {
2026-06-04T13:05:22.9061442Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T13:05:22.9061927Z               "line": 303
2026-06-04T13:05:22.9062361Z             },
2026-06-04T13:05:22.9062805Z             {
2026-06-04T13:05:22.9063462Z               "path": "crates/spt-daemon/tests/sync.rs",
2026-06-04T13:05:22.9063943Z               "line": 399
2026-06-04T13:05:22.9064380Z             },
2026-06-04T13:05:22.9064820Z             {
2026-06-04T13:05:22.9065459Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T13:05:22.9065971Z               "line": 93
2026-06-04T13:05:22.9066408Z             },
2026-06-04T13:05:22.9066839Z             {
2026-06-04T13:05:22.9067464Z               "path": "crates/spt-net/src/net/sync.rs",
2026-06-04T13:05:22.9067920Z               "line": 131
2026-06-04T13:05:22.9068359Z             },
2026-06-04T13:05:22.9068795Z             {
2026-06-04T13:05:22.9069655Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T13:05:22.9070268Z               "line": 308
2026-06-04T13:05:22.9070698Z             },
2026-06-04T13:05:22.9071132Z             {
2026-06-04T13:05:22.9071788Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T13:05:22.9072266Z               "line": 345
2026-06-04T13:05:22.9072712Z             },
2026-06-04T13:05:22.9073145Z             {
2026-06-04T13:05:22.9073836Z               "path": "crates/spt-store/src/syncmerge.rs",
2026-06-04T13:05:22.9074319Z               "line": 469
2026-06-04T13:05:22.9075245Z             }
2026-06-04T13:05:22.9075692Z           ]
2026-06-04T13:05:22.9076128Z         }
2026-06-04T13:05:22.9076572Z       }
2026-06-04T13:05:22.9077218Z     },
2026-06-04T13:05:22.9077665Z     {
2026-06-04T13:05:22.9078188Z       "id": "REQ-NODE-IDENTITY",
2026-06-04T13:05:22.9079825Z       "title": "Ed25519 identity primitive: keypair, detached sign/verify, stable pubkey<->hex",
2026-06-04T13:05:22.9080529Z       "requiredStages": [
2026-06-04T13:05:22.9080982Z         "impl",
2026-06-04T13:05:22.9081422Z         "unit"
2026-06-04T13:05:22.9081850Z       ],
2026-06-04T13:05:22.9082302Z       "stages": {
2026-06-04T13:05:22.9082758Z         "doc": {
2026-06-04T13:05:22.9083257Z           "complete": false,
2026-06-04T13:05:22.9083736Z           "evidence": []
2026-06-04T13:05:22.9084167Z         },
2026-06-04T13:05:22.9084636Z         "impl": {
2026-06-04T13:05:22.9085121Z           "complete": true,
2026-06-04T13:05:22.9085641Z           "evidence": [
2026-06-04T13:05:22.9086118Z             {
2026-06-04T13:05:22.9086824Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T13:05:22.9087299Z               "line": 60
2026-06-04T13:05:22.9087762Z             },
2026-06-04T13:05:22.9088202Z             {
2026-06-04T13:05:22.9088871Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T13:05:22.9089578Z               "line": 68
2026-06-04T13:05:22.9090167Z             },
2026-06-04T13:05:22.9090612Z             {
2026-06-04T13:05:22.9091286Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T13:05:22.9091746Z               "line": 86
2026-06-04T13:05:22.9092206Z             },
2026-06-04T13:05:22.9092653Z             {
2026-06-04T13:05:22.9093326Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T13:05:22.9093801Z               "line": 120
2026-06-04T13:05:22.9094257Z             },
2026-06-04T13:05:22.9094705Z             {
2026-06-04T13:05:22.9095364Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T13:05:22.9095877Z               "line": 127
2026-06-04T13:05:22.9096304Z             },
2026-06-04T13:05:22.9096738Z             {
2026-06-04T13:05:22.9097405Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T13:05:22.9097884Z               "line": 143
2026-06-04T13:05:22.9098342Z             },
2026-06-04T13:05:22.9098775Z             {
2026-06-04T13:05:22.9099618Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T13:05:22.9100235Z               "line": 16
2026-06-04T13:05:22.9100683Z             }
2026-06-04T13:05:22.9101122Z           ]
2026-06-04T13:05:22.9101579Z         },
2026-06-04T13:05:22.9102033Z         "int": {
2026-06-04T13:05:22.9102522Z           "complete": false,
2026-06-04T13:05:22.9103005Z           "evidence": []
2026-06-04T13:05:22.9103431Z         },
2026-06-04T13:05:22.9103895Z         "unit": {
2026-06-04T13:05:22.9104412Z           "complete": true,
2026-06-04T13:05:22.9104903Z           "evidence": [
2026-06-04T13:05:22.9105352Z             {
2026-06-04T13:05:22.9106038Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T13:05:22.9106544Z               "line": 199
2026-06-04T13:05:22.9107026Z             },
2026-06-04T13:05:22.9107473Z             {
2026-06-04T13:05:22.9108139Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T13:05:22.9108629Z               "line": 218
2026-06-04T13:05:22.9109077Z             },
2026-06-04T13:05:22.9109755Z             {
2026-06-04T13:05:22.9110710Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T13:05:22.9111185Z               "line": 232
2026-06-04T13:05:22.9111638Z             },
2026-06-04T13:05:22.9112075Z             {
2026-06-04T13:05:22.9112763Z               "path": "crates/spt-proto/src/identity.rs",
2026-06-04T13:05:22.9113262Z               "line": 248
2026-06-04T13:05:22.9113715Z             },
2026-06-04T13:05:22.9114164Z             {
2026-06-04T13:05:22.9114806Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T13:05:22.9115693Z               "line": 125
2026-06-04T13:05:22.9116152Z             },
2026-06-04T13:05:22.9116596Z             {
2026-06-04T13:05:22.9117255Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T13:05:22.9117962Z               "line": 141
2026-06-04T13:05:22.9118440Z             },
2026-06-04T13:05:22.9118899Z             {
2026-06-04T13:05:22.9119810Z               "path": "crates/spt-store/src/nodeid.rs",
2026-06-04T13:05:22.9120470Z               "line": 153
2026-06-04T13:05:22.9120901Z             }
2026-06-04T13:05:22.9121345Z           ]
2026-06-04T13:05:22.9121786Z         }
2026-06-04T13:05:22.9122232Z       }
2026-06-04T13:05:22.9122658Z     },
2026-06-04T13:05:22.9123096Z     {
2026-06-04T13:05:22.9123576Z       "id": "REQ-NOTIF-1",
2026-06-04T13:05:22.9125880Z       "title": "Notification primitive: per-subnet replicated spool, seen/dismissed, resurface-at-boundary, subsumes update+consent prompts",
2026-06-04T13:05:22.9126400Z       "requiredStages": [
2026-06-04T13:05:22.9126878Z         "impl",
2026-06-04T13:05:22.9127330Z         "unit"
2026-06-04T13:05:22.9127759Z       ],
2026-06-04T13:05:22.9128226Z       "stages": {
2026-06-04T13:05:22.9128686Z         "doc": {
2026-06-04T13:05:22.9129229Z           "complete": false,
2026-06-04T13:05:22.9130017Z           "evidence": []
2026-06-04T13:05:22.9130439Z         },
2026-06-04T13:05:22.9130895Z         "impl": {
2026-06-04T13:05:22.9131382Z           "complete": true,
2026-06-04T13:05:22.9131848Z           "evidence": [
2026-06-04T13:05:22.9132290Z             {
2026-06-04T13:05:22.9132973Z               "path": "crates/spt-daemon/src/dispatch.rs",
2026-06-04T13:05:22.9133454Z               "line": 412
2026-06-04T13:05:22.9133901Z             },
2026-06-04T13:05:22.9134353Z             {
2026-06-04T13:05:22.9134980Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9135455Z               "line": 30
2026-06-04T13:05:22.9135916Z             },
2026-06-04T13:05:22.9136357Z             {
2026-06-04T13:05:22.9137005Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9137457Z               "line": 62
2026-06-04T13:05:22.9137903Z             },
2026-06-04T13:05:22.9138351Z             {
2026-06-04T13:05:22.9139007Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9139732Z               "line": 83
2026-06-04T13:05:22.9140347Z             },
2026-06-04T13:05:22.9140799Z             {
2026-06-04T13:05:22.9141460Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9141941Z               "line": 97
2026-06-04T13:05:22.9142374Z             },
2026-06-04T13:05:22.9142814Z             {
2026-06-04T13:05:22.9143485Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9143966Z               "line": 126
2026-06-04T13:05:22.9144401Z             },
2026-06-04T13:05:22.9144850Z             {
2026-06-04T13:05:22.9145491Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9145978Z               "line": 159
2026-06-04T13:05:22.9146478Z             },
2026-06-04T13:05:22.9146941Z             {
2026-06-04T13:05:22.9147597Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9148115Z               "line": 179
2026-06-04T13:05:22.9155183Z             },
2026-06-04T13:05:22.9155834Z             {
2026-06-04T13:05:22.9156502Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9156979Z               "line": 239
2026-06-04T13:05:22.9157424Z             },
2026-06-04T13:05:22.9157850Z             {
2026-06-04T13:05:22.9158491Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9158954Z               "line": 287
2026-06-04T13:05:22.9159621Z             },
2026-06-04T13:05:22.9160216Z             {
2026-06-04T13:05:22.9160904Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T13:05:22.9161388Z               "line": 24
2026-06-04T13:05:22.9161821Z             },
2026-06-04T13:05:22.9162269Z             {
2026-06-04T13:05:22.9163431Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T13:05:22.9163909Z               "line": 34
2026-06-04T13:05:22.9164363Z             },
2026-06-04T13:05:22.9164972Z             {
2026-06-04T13:05:22.9165659Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T13:05:22.9166119Z               "line": 55
2026-06-04T13:05:22.9166555Z             },
2026-06-04T13:05:22.9166971Z             {
2026-06-04T13:05:22.9167651Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T13:05:22.9168119Z               "line": 76
2026-06-04T13:05:22.9168544Z             },
2026-06-04T13:05:22.9168974Z             {
2026-06-04T13:05:22.9169701Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T13:05:22.9170174Z               "line": 88
2026-06-04T13:05:22.9170602Z             },
2026-06-04T13:05:22.9171043Z             {
2026-06-04T13:05:22.9171739Z               "path": "crates/spt-daemon/src/peerloop.rs",
2026-06-04T13:05:22.9172202Z               "line": 41
2026-06-04T13:05:22.9172659Z             },
2026-06-04T13:05:22.9173079Z             {
2026-06-04T13:05:22.9173747Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.9174216Z               "line": 94
2026-06-04T13:05:22.9174650Z             },
2026-06-04T13:05:22.9175080Z             {
2026-06-04T13:05:22.9175710Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T13:05:22.9176173Z               "line": 20
2026-06-04T13:05:22.9176592Z             },
2026-06-04T13:05:22.9177020Z             {
2026-06-04T13:05:22.9177651Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T13:05:22.9178125Z               "line": 30
2026-06-04T13:05:22.9178563Z             },
2026-06-04T13:05:22.9178987Z             {
2026-06-04T13:05:22.9179687Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T13:05:22.9180149Z               "line": 50
2026-06-04T13:05:22.9180587Z             },
2026-06-04T13:05:22.9181004Z             {
2026-06-04T13:05:22.9181641Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9182107Z               "line": 28
2026-06-04T13:05:22.9182534Z             },
2026-06-04T13:05:22.9182987Z             {
2026-06-04T13:05:22.9183597Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9184072Z               "line": 126
2026-06-04T13:05:22.9184493Z             },
2026-06-04T13:05:22.9184933Z             {
2026-06-04T13:05:22.9185552Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9186012Z               "line": 161
2026-06-04T13:05:22.9186457Z             },
2026-06-04T13:05:22.9186904Z             {
2026-06-04T13:05:22.9187566Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9188039Z               "line": 197
2026-06-04T13:05:22.9188476Z             },
2026-06-04T13:05:22.9188906Z             {
2026-06-04T13:05:22.9189733Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9190374Z               "line": 208
2026-06-04T13:05:22.9190823Z             },
2026-06-04T13:05:22.9191267Z             {
2026-06-04T13:05:22.9191888Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9192381Z               "line": 231
2026-06-04T13:05:22.9192836Z             },
2026-06-04T13:05:22.9193292Z             {
2026-06-04T13:05:22.9193918Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9194378Z               "line": 251
2026-06-04T13:05:22.9194847Z             },
2026-06-04T13:05:22.9195317Z             {
2026-06-04T13:05:22.9196005Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.9196506Z               "line": 63
2026-06-04T13:05:22.9196959Z             }
2026-06-04T13:05:22.9197415Z           ]
2026-06-04T13:05:22.9197846Z         },
2026-06-04T13:05:22.9198315Z         "int": {
2026-06-04T13:05:22.9198826Z           "complete": true,
2026-06-04T13:05:22.9199521Z           "evidence": [
2026-06-04T13:05:22.9200156Z             {
2026-06-04T13:05:22.9201276Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T13:05:22.9201771Z               "line": 265
2026-06-04T13:05:22.9202204Z             },
2026-06-04T13:05:22.9202822Z             {
2026-06-04T13:05:22.9203534Z               "path": "crates/spt-daemon/tests/peerloop.rs",
2026-06-04T13:05:22.9204004Z               "line": 102
2026-06-04T13:05:22.9204446Z             }
2026-06-04T13:05:22.9204881Z           ]
2026-06-04T13:05:22.9205323Z         },
2026-06-04T13:05:22.9205772Z         "unit": {
2026-06-04T13:05:22.9206267Z           "complete": true,
2026-06-04T13:05:22.9206759Z           "evidence": [
2026-06-04T13:05:22.9207205Z             {
2026-06-04T13:05:22.9207878Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9208430Z               "line": 362
2026-06-04T13:05:22.9208881Z             },
2026-06-04T13:05:22.9209548Z             {
2026-06-04T13:05:22.9210372Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9210880Z               "line": 400
2026-06-04T13:05:22.9211318Z             },
2026-06-04T13:05:22.9211763Z             {
2026-06-04T13:05:22.9212398Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9212911Z               "line": 427
2026-06-04T13:05:22.9213354Z             },
2026-06-04T13:05:22.9213798Z             {
2026-06-04T13:05:22.9214440Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9214898Z               "line": 448
2026-06-04T13:05:22.9215341Z             },
2026-06-04T13:05:22.9215763Z             {
2026-06-04T13:05:22.9216396Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9216861Z               "line": 501
2026-06-04T13:05:22.9217305Z             },
2026-06-04T13:05:22.9217789Z             {
2026-06-04T13:05:22.9218476Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9218972Z               "line": 540
2026-06-04T13:05:22.9219643Z             },
2026-06-04T13:05:22.9220146Z             {
2026-06-04T13:05:22.9220825Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9221314Z               "line": 632
2026-06-04T13:05:22.9221786Z             },
2026-06-04T13:05:22.9222253Z             {
2026-06-04T13:05:22.9222990Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T13:05:22.9223503Z               "line": 133
2026-06-04T13:05:22.9223973Z             },
2026-06-04T13:05:22.9224417Z             {
2026-06-04T13:05:22.9225140Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T13:05:22.9225672Z               "line": 208
2026-06-04T13:05:22.9226127Z             },
2026-06-04T13:05:22.9226595Z             {
2026-06-04T13:05:22.9227329Z               "path": "crates/spt-daemon/src/notifsync.rs",
2026-06-04T13:05:22.9227854Z               "line": 227
2026-06-04T13:05:22.9228312Z             },
2026-06-04T13:05:22.9228766Z             {
2026-06-04T13:05:22.9229680Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.9230188Z               "line": 328
2026-06-04T13:05:22.9230630Z             },
2026-06-04T13:05:22.9231063Z             {
2026-06-04T13:05:22.9231743Z               "path": "crates/spt-daemon/src/psyrelay.rs",
2026-06-04T13:05:22.9232233Z               "line": 357
2026-06-04T13:05:22.9232669Z             },
2026-06-04T13:05:22.9233129Z             {
2026-06-04T13:05:22.9233838Z               "path": "crates/spt-daemon/tests/notifsync.rs",
2026-06-04T13:05:22.9234309Z               "line": 112
2026-06-04T13:05:22.9234756Z             },
2026-06-04T13:05:22.9235210Z             {
2026-06-04T13:05:22.9235878Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T13:05:22.9236333Z               "line": 72
2026-06-04T13:05:22.9236784Z             },
2026-06-04T13:05:22.9237207Z             {
2026-06-04T13:05:22.9237859Z               "path": "crates/spt-net/src/net/notif.rs",
2026-06-04T13:05:22.9238322Z               "line": 94
2026-06-04T13:05:22.9238760Z             },
2026-06-04T13:05:22.9239780Z             {
2026-06-04T13:05:22.9240581Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9241075Z               "line": 365
2026-06-04T13:05:22.9248053Z             },
2026-06-04T13:05:22.9248704Z             {
2026-06-04T13:05:22.9249454Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9249946Z               "line": 396
2026-06-04T13:05:22.9250382Z             },
2026-06-04T13:05:22.9250806Z             {
2026-06-04T13:05:22.9251441Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9251897Z               "line": 410
2026-06-04T13:05:22.9252347Z             },
2026-06-04T13:05:22.9252776Z             {
2026-06-04T13:05:22.9253405Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9253891Z               "line": 441
2026-06-04T13:05:22.9254322Z             },
2026-06-04T13:05:22.9254753Z             {
2026-06-04T13:05:22.9255363Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9255907Z               "line": 458
2026-06-04T13:05:22.9256332Z             },
2026-06-04T13:05:22.9256772Z             {
2026-06-04T13:05:22.9257404Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9257902Z               "line": 483
2026-06-04T13:05:22.9258349Z             },
2026-06-04T13:05:22.9258776Z             {
2026-06-04T13:05:22.9259489Z               "path": "crates/spt-store/src/notif.rs",
2026-06-04T13:05:22.9259973Z               "line": 507
2026-06-04T13:05:22.9260430Z             },
2026-06-04T13:05:22.9260876Z             {
2026-06-04T13:05:22.9261533Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.9261997Z               "line": 313
2026-06-04T13:05:22.9262427Z             }
2026-06-04T13:05:22.9262868Z           ]
2026-06-04T13:05:22.9263291Z         }
2026-06-04T13:05:22.9263722Z       }
2026-06-04T13:05:22.9264157Z     },
2026-06-04T13:05:22.9264581Z     {
2026-06-04T13:05:22.9265062Z       "id": "REQ-NOTIF-2",
2026-06-04T13:05:22.9266720Z       "title": "spt notify (agent-issued subnet notif) + notif_command manifest seam (harness + shell adapters)",
2026-06-04T13:05:22.9267252Z       "requiredStages": [
2026-06-04T13:05:22.9267724Z         "doc",
2026-06-04T13:05:22.9268163Z         "impl",
2026-06-04T13:05:22.9268609Z         "unit"
2026-06-04T13:05:22.9269040Z       ],
2026-06-04T13:05:22.9269733Z       "stages": {
2026-06-04T13:05:22.9270376Z         "doc": {
2026-06-04T13:05:22.9270898Z           "complete": true,
2026-06-04T13:05:22.9271373Z           "evidence": [
2026-06-04T13:05:22.9271826Z             {
2026-06-04T13:05:22.9272372Z               "path": "docs/MANIFEST.md",
2026-06-04T13:05:22.9272823Z               "line": 62
2026-06-04T13:05:22.9273260Z             }
2026-06-04T13:05:22.9273680Z           ]
2026-06-04T13:05:22.9274121Z         },
2026-06-04T13:05:22.9274563Z         "impl": {
2026-06-04T13:05:22.9275084Z           "complete": true,
2026-06-04T13:05:22.9275609Z           "evidence": [
2026-06-04T13:05:22.9276090Z             {
2026-06-04T13:05:22.9276746Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9277227Z               "line": 208
2026-06-04T13:05:22.9277691Z             },
2026-06-04T13:05:22.9278125Z             {
2026-06-04T13:05:22.9278771Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9279446Z               "line": 222
2026-06-04T13:05:22.9279918Z             },
2026-06-04T13:05:22.9280522Z             {
2026-06-04T13:05:22.9281183Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:22.9281675Z               "line": 125
2026-06-04T13:05:22.9282132Z             },
2026-06-04T13:05:22.9282568Z             {
2026-06-04T13:05:22.9283246Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.9283720Z               "line": 72
2026-06-04T13:05:22.9284156Z             },
2026-06-04T13:05:22.9284586Z             {
2026-06-04T13:05:22.9285155Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9286160Z               "line": 383
2026-06-04T13:05:22.9286603Z             },
2026-06-04T13:05:22.9287038Z             {
2026-06-04T13:05:22.9287603Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9288315Z               "line": 415
2026-06-04T13:05:22.9288752Z             },
2026-06-04T13:05:22.9289247Z             {
2026-06-04T13:05:22.9290163Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9290641Z               "line": 481
2026-06-04T13:05:22.9291090Z             },
2026-06-04T13:05:22.9291526Z             {
2026-06-04T13:05:22.9292110Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9292580Z               "line": 517
2026-06-04T13:05:22.9293027Z             }
2026-06-04T13:05:22.9293480Z           ]
2026-06-04T13:05:22.9293924Z         },
2026-06-04T13:05:22.9294379Z         "int": {
2026-06-04T13:05:22.9294868Z           "complete": false,
2026-06-04T13:05:22.9295341Z           "evidence": []
2026-06-04T13:05:22.9295770Z         },
2026-06-04T13:05:22.9296251Z         "unit": {
2026-06-04T13:05:22.9296742Z           "complete": true,
2026-06-04T13:05:22.9297195Z           "evidence": [
2026-06-04T13:05:22.9297644Z             {
2026-06-04T13:05:22.9298274Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:22.9298775Z               "line": 590
2026-06-04T13:05:22.9299295Z             },
2026-06-04T13:05:22.9300062Z             {
2026-06-04T13:05:22.9300674Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9301278Z               "line": 1129
2026-06-04T13:05:22.9301737Z             },
2026-06-04T13:05:22.9302182Z             {
2026-06-04T13:05:22.9302761Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9303230Z               "line": 1151
2026-06-04T13:05:22.9303701Z             }
2026-06-04T13:05:22.9304159Z           ]
2026-06-04T13:05:22.9304603Z         }
2026-06-04T13:05:22.9305054Z       }
2026-06-04T13:05:22.9305494Z     },
2026-06-04T13:05:22.9305936Z     {
2026-06-04T13:05:22.9306464Z       "id": "REQ-PAIR-1",
2026-06-04T13:05:22.9307055Z       "title": "TOTP-seeded SPAKE2 pairing",
2026-06-04T13:05:22.9307566Z       "requiredStages": [
2026-06-04T13:05:22.9308015Z         "impl",
2026-06-04T13:05:22.9308474Z         "unit"
2026-06-04T13:05:22.9308910Z       ],
2026-06-04T13:05:22.9309446Z       "stages": {
2026-06-04T13:05:22.9309903Z         "doc": {
2026-06-04T13:05:22.9310423Z           "complete": false,
2026-06-04T13:05:22.9310903Z           "evidence": []
2026-06-04T13:05:22.9311354Z         },
2026-06-04T13:05:22.9311874Z         "impl": {
2026-06-04T13:05:22.9312364Z           "complete": true,
2026-06-04T13:05:22.9312854Z           "evidence": [
2026-06-04T13:05:22.9313295Z             {
2026-06-04T13:05:22.9314082Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.9314560Z               "line": 27
2026-06-04T13:05:22.9314993Z             },
2026-06-04T13:05:22.9315450Z             {
2026-06-04T13:05:22.9316182Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.9316698Z               "line": 88
2026-06-04T13:05:22.9317146Z             },
2026-06-04T13:05:22.9317608Z             {
2026-06-04T13:05:22.9318352Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.9318831Z               "line": 110
2026-06-04T13:05:22.9319343Z             },
2026-06-04T13:05:22.9319805Z             {
2026-06-04T13:05:22.9320554Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.9321029Z               "line": 153
2026-06-04T13:05:22.9321486Z             },
2026-06-04T13:05:22.9321934Z             {
2026-06-04T13:05:22.9322654Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.9323129Z               "line": 182
2026-06-04T13:05:22.9323564Z             },
2026-06-04T13:05:22.9324014Z             {
2026-06-04T13:05:22.9324732Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T13:05:22.9325219Z               "line": 29
2026-06-04T13:05:22.9326059Z             },
2026-06-04T13:05:22.9326498Z             {
2026-06-04T13:05:22.9327310Z               "path": "crates/spt-net/src/net/pairing/transcript.rs",
2026-06-04T13:05:22.9328019Z               "line": 31
2026-06-04T13:05:22.9328463Z             },
2026-06-04T13:05:22.9328898Z             {
2026-06-04T13:05:22.9329855Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9330534Z               "line": 40
2026-06-04T13:05:22.9330987Z             },
2026-06-04T13:05:22.9331454Z             {
2026-06-04T13:05:22.9332217Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9332717Z               "line": 131
2026-06-04T13:05:22.9333184Z             },
2026-06-04T13:05:22.9340362Z             {
2026-06-04T13:05:22.9341294Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9341764Z               "line": 306
2026-06-04T13:05:22.9342198Z             }
2026-06-04T13:05:22.9342672Z           ]
2026-06-04T13:05:22.9343108Z         },
2026-06-04T13:05:22.9343550Z         "int": {
2026-06-04T13:05:22.9344026Z           "complete": false,
2026-06-04T13:05:22.9344513Z           "evidence": []
2026-06-04T13:05:22.9344936Z         },
2026-06-04T13:05:22.9345393Z         "unit": {
2026-06-04T13:05:22.9345881Z           "complete": true,
2026-06-04T13:05:22.9346382Z           "evidence": [
2026-06-04T13:05:22.9346817Z             {
2026-06-04T13:05:22.9347546Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.9348024Z               "line": 236
2026-06-04T13:05:22.9348454Z             },
2026-06-04T13:05:22.9348885Z             {
2026-06-04T13:05:22.9349859Z               "path": "crates/spt-net/src/net/pairing/spake.rs",
2026-06-04T13:05:22.9350504Z               "line": 349
2026-06-04T13:05:22.9350943Z             },
2026-06-04T13:05:22.9351489Z             {
2026-06-04T13:05:22.9352213Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T13:05:22.9352722Z               "line": 194
2026-06-04T13:05:22.9353178Z             },
2026-06-04T13:05:22.9353613Z             {
2026-06-04T13:05:22.9354354Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T13:05:22.9354834Z               "line": 216
2026-06-04T13:05:22.9355264Z             },
2026-06-04T13:05:22.9355698Z             {
2026-06-04T13:05:22.9356401Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T13:05:22.9356876Z               "line": 230
2026-06-04T13:05:22.9357305Z             },
2026-06-04T13:05:22.9357749Z             {
2026-06-04T13:05:22.9358469Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T13:05:22.9358941Z               "line": 242
2026-06-04T13:05:22.9359452Z             },
2026-06-04T13:05:22.9359896Z             {
2026-06-04T13:05:22.9360609Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T13:05:22.9361067Z               "line": 256
2026-06-04T13:05:22.9361517Z             },
2026-06-04T13:05:22.9362004Z             {
2026-06-04T13:05:22.9362741Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T13:05:22.9363283Z               "line": 270
2026-06-04T13:05:22.9363740Z             },
2026-06-04T13:05:22.9364188Z             {
2026-06-04T13:05:22.9364929Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T13:05:22.9365435Z               "line": 277
2026-06-04T13:05:22.9365888Z             },
2026-06-04T13:05:22.9366322Z             {
2026-06-04T13:05:22.9367050Z               "path": "crates/spt-net/src/net/pairing/totp.rs",
2026-06-04T13:05:22.9367521Z               "line": 295
2026-06-04T13:05:22.9367982Z             },
2026-06-04T13:05:22.9368424Z             {
2026-06-04T13:05:22.9369135Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9369681Z               "line": 696
2026-06-04T13:05:22.9370129Z             },
2026-06-04T13:05:22.9370563Z             {
2026-06-04T13:05:22.9371269Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9372270Z               "line": 757
2026-06-04T13:05:22.9372733Z             },
2026-06-04T13:05:22.9373377Z             {
2026-06-04T13:05:22.9374120Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9374591Z               "line": 814
2026-06-04T13:05:22.9375031Z             },
2026-06-04T13:05:22.9375457Z             {
2026-06-04T13:05:22.9376173Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9376665Z               "line": 868
2026-06-04T13:05:22.9377112Z             },
2026-06-04T13:05:22.9377541Z             {
2026-06-04T13:05:22.9378272Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9378788Z               "line": 920
2026-06-04T13:05:22.9379455Z             },
2026-06-04T13:05:22.9379981Z             {
2026-06-04T13:05:22.9380885Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9381410Z               "line": 1084
2026-06-04T13:05:22.9381861Z             }
2026-06-04T13:05:22.9382286Z           ]
2026-06-04T13:05:22.9382729Z         }
2026-06-04T13:05:22.9383176Z       }
2026-06-04T13:05:22.9383612Z     },
2026-06-04T13:05:22.9384041Z     {
2026-06-04T13:05:22.9384521Z       "id": "REQ-PAIR-2",
2026-06-04T13:05:22.9385286Z       "title": "Local trust store with TOFU + warn-on-change",
2026-06-04T13:05:22.9385787Z       "requiredStages": [
2026-06-04T13:05:22.9386240Z         "impl",
2026-06-04T13:05:22.9386665Z         "unit"
2026-06-04T13:05:22.9387102Z       ],
2026-06-04T13:05:22.9387552Z       "stages": {
2026-06-04T13:05:22.9387995Z         "doc": {
2026-06-04T13:05:22.9388497Z           "complete": false,
2026-06-04T13:05:22.9388958Z           "evidence": []
2026-06-04T13:05:22.9389616Z         },
2026-06-04T13:05:22.9390246Z         "impl": {
2026-06-04T13:05:22.9390757Z           "complete": true,
2026-06-04T13:05:22.9391240Z           "evidence": [
2026-06-04T13:05:22.9391673Z             {
2026-06-04T13:05:22.9392331Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9392800Z               "line": 42
2026-06-04T13:05:22.9393269Z             },
2026-06-04T13:05:22.9393705Z             {
2026-06-04T13:05:22.9394361Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9394855Z               "line": 151
2026-06-04T13:05:22.9395299Z             },
2026-06-04T13:05:22.9395749Z             {
2026-06-04T13:05:22.9396381Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9396869Z               "line": 171
2026-06-04T13:05:22.9397310Z             },
2026-06-04T13:05:22.9397756Z             {
2026-06-04T13:05:22.9398391Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9398860Z               "line": 209
2026-06-04T13:05:22.9399382Z             },
2026-06-04T13:05:22.9399821Z             {
2026-06-04T13:05:22.9400587Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9401093Z               "line": 232
2026-06-04T13:05:22.9401546Z             }
2026-06-04T13:05:22.9401997Z           ]
2026-06-04T13:05:22.9402421Z         },
2026-06-04T13:05:22.9402894Z         "int": {
2026-06-04T13:05:22.9403387Z           "complete": false,
2026-06-04T13:05:22.9403856Z           "evidence": []
2026-06-04T13:05:22.9404288Z         },
2026-06-04T13:05:22.9404754Z         "unit": {
2026-06-04T13:05:22.9405250Z           "complete": true,
2026-06-04T13:05:22.9405711Z           "evidence": [
2026-06-04T13:05:22.9406151Z             {
2026-06-04T13:05:22.9406763Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9407251Z               "line": 253
2026-06-04T13:05:22.9407685Z             },
2026-06-04T13:05:22.9408127Z             {
2026-06-04T13:05:22.9408744Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9409252Z               "line": 272
2026-06-04T13:05:22.9409703Z             },
2026-06-04T13:05:22.9410136Z             {
2026-06-04T13:05:22.9411148Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9411612Z               "line": 284
2026-06-04T13:05:22.9412062Z             },
2026-06-04T13:05:22.9412691Z             {
2026-06-04T13:05:22.9413325Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9413798Z               "line": 303
2026-06-04T13:05:22.9414227Z             },
2026-06-04T13:05:22.9414679Z             {
2026-06-04T13:05:22.9415307Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9415800Z               "line": 319
2026-06-04T13:05:22.9416233Z             },
2026-06-04T13:05:22.9416652Z             {
2026-06-04T13:05:22.9417275Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9417736Z               "line": 331
2026-06-04T13:05:22.9418181Z             },
2026-06-04T13:05:22.9418634Z             {
2026-06-04T13:05:22.9419320Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9419816Z               "line": 343
2026-06-04T13:05:22.9420299Z             },
2026-06-04T13:05:22.9420769Z             {
2026-06-04T13:05:22.9421421Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9421932Z               "line": 356
2026-06-04T13:05:22.9422392Z             },
2026-06-04T13:05:22.9422819Z             {
2026-06-04T13:05:22.9423463Z               "path": "crates/spt-store/src/trust.rs",
2026-06-04T13:05:22.9423937Z               "line": 370
2026-06-04T13:05:22.9424396Z             }
2026-06-04T13:05:22.9424840Z           ]
2026-06-04T13:05:22.9432109Z         }
2026-06-04T13:05:22.9432772Z       }
2026-06-04T13:05:22.9433202Z     },
2026-06-04T13:05:22.9433641Z     {
2026-06-04T13:05:22.9434137Z       "id": "REQ-PAIR-3",
2026-06-04T13:05:22.9434979Z       "title": "Fetch current pairing code from any paired node",
2026-06-04T13:05:22.9435478Z       "requiredStages": [
2026-06-04T13:05:22.9435935Z         "impl",
2026-06-04T13:05:22.9436388Z         "unit"
2026-06-04T13:05:22.9436818Z       ],
2026-06-04T13:05:22.9437329Z       "stages": {
2026-06-04T13:05:22.9437769Z         "doc": {
2026-06-04T13:05:22.9438261Z           "complete": false,
2026-06-04T13:05:22.9438749Z           "evidence": []
2026-06-04T13:05:22.9439258Z         },
2026-06-04T13:05:22.9439723Z         "impl": {
2026-06-04T13:05:22.9440210Z           "complete": true,
2026-06-04T13:05:22.9440685Z           "evidence": [
2026-06-04T13:05:22.9441292Z             {
2026-06-04T13:05:22.9441983Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9442630Z               "line": 793
2026-06-04T13:05:22.9443076Z             },
2026-06-04T13:05:22.9443524Z             {
2026-06-04T13:05:22.9444099Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9444585Z               "line": 829
2026-06-04T13:05:22.9445009Z             },
2026-06-04T13:05:22.9445448Z             {
2026-06-04T13:05:22.9446012Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9446482Z               "line": 889
2026-06-04T13:05:22.9446955Z             }
2026-06-04T13:05:22.9447379Z           ]
2026-06-04T13:05:22.9447812Z         },
2026-06-04T13:05:22.9448246Z         "int": {
2026-06-04T13:05:22.9448756Z           "complete": false,
2026-06-04T13:05:22.9449272Z           "evidence": []
2026-06-04T13:05:22.9449723Z         },
2026-06-04T13:05:22.9450170Z         "unit": {
2026-06-04T13:05:22.9450637Z           "complete": true,
2026-06-04T13:05:22.9451099Z           "evidence": [
2026-06-04T13:05:22.9451523Z             {
2026-06-04T13:05:22.9452100Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9452587Z               "line": 1250
2026-06-04T13:05:22.9453057Z             },
2026-06-04T13:05:22.9453512Z             {
2026-06-04T13:05:22.9454093Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9454581Z               "line": 1267
2026-06-04T13:05:22.9455019Z             },
2026-06-04T13:05:22.9455460Z             {
2026-06-04T13:05:22.9456024Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9457037Z               "line": 1281
2026-06-04T13:05:22.9457499Z             },
2026-06-04T13:05:22.9457947Z             {
2026-06-04T13:05:22.9458748Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9459309Z               "line": 1297
2026-06-04T13:05:22.9459766Z             },
2026-06-04T13:05:22.9460215Z             {
2026-06-04T13:05:22.9460799Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9461287Z               "line": 1318
2026-06-04T13:05:22.9461722Z             },
2026-06-04T13:05:22.9462164Z             {
2026-06-04T13:05:22.9462731Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9463225Z               "line": 1334
2026-06-04T13:05:22.9463690Z             },
2026-06-04T13:05:22.9464131Z             {
2026-06-04T13:05:22.9464698Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9465169Z               "line": 1347
2026-06-04T13:05:22.9465616Z             },
2026-06-04T13:05:22.9466056Z             {
2026-06-04T13:05:22.9466683Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9467170Z               "line": 1356
2026-06-04T13:05:22.9467623Z             }
2026-06-04T13:05:22.9468077Z           ]
2026-06-04T13:05:22.9468518Z         }
2026-06-04T13:05:22.9468977Z       }
2026-06-04T13:05:22.9469632Z     },
2026-06-04T13:05:22.9470278Z     {
2026-06-04T13:05:22.9470804Z       "id": "REQ-PAIR-4",
2026-06-04T13:05:22.9471438Z       "title": "Subnet naming on first pairing",
2026-06-04T13:05:22.9471943Z       "requiredStages": [
2026-06-04T13:05:22.9472394Z         "impl",
2026-06-04T13:05:22.9472852Z         "unit"
2026-06-04T13:05:22.9473276Z       ],
2026-06-04T13:05:22.9473747Z       "stages": {
2026-06-04T13:05:22.9474200Z         "doc": {
2026-06-04T13:05:22.9474711Z           "complete": false,
2026-06-04T13:05:22.9475210Z           "evidence": []
2026-06-04T13:05:22.9475651Z         },
2026-06-04T13:05:22.9476107Z         "impl": {
2026-06-04T13:05:22.9476584Z           "complete": true,
2026-06-04T13:05:22.9477071Z           "evidence": [
2026-06-04T13:05:22.9477507Z             {
2026-06-04T13:05:22.9478166Z               "path": "crates/spt-store/src/subnet.rs",
2026-06-04T13:05:22.9478679Z               "line": 154
2026-06-04T13:05:22.9479121Z             }
2026-06-04T13:05:22.9479846Z           ]
2026-06-04T13:05:22.9480454Z         },
2026-06-04T13:05:22.9480916Z         "int": {
2026-06-04T13:05:22.9481400Z           "complete": false,
2026-06-04T13:05:22.9481888Z           "evidence": []
2026-06-04T13:05:22.9482342Z         },
2026-06-04T13:05:22.9482801Z         "unit": {
2026-06-04T13:05:22.9483308Z           "complete": true,
2026-06-04T13:05:22.9483793Z           "evidence": [
2026-06-04T13:05:22.9484249Z             {
2026-06-04T13:05:22.9484981Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9485461Z               "line": 972
2026-06-04T13:05:22.9485914Z             }
2026-06-04T13:05:22.9486352Z           ]
2026-06-04T13:05:22.9486800Z         }
2026-06-04T13:05:22.9487255Z       }
2026-06-04T13:05:22.9487703Z     },
2026-06-04T13:05:22.9488124Z     {
2026-06-04T13:05:22.9488630Z       "id": "REQ-PAIR-5",
2026-06-04T13:05:22.9490598Z       "title": "Multi-subnet pairing: subnet-name discovery input, create-new-names-up-front, rendezvous-token hashing",
2026-06-04T13:05:22.9491125Z       "requiredStages": [
2026-06-04T13:05:22.9491575Z         "impl",
2026-06-04T13:05:22.9492016Z         "unit"
2026-06-04T13:05:22.9492466Z       ],
2026-06-04T13:05:22.9492904Z       "stages": {
2026-06-04T13:05:22.9493340Z         "doc": {
2026-06-04T13:05:22.9493838Z           "complete": false,
2026-06-04T13:05:22.9494307Z           "evidence": []
2026-06-04T13:05:22.9494742Z         },
2026-06-04T13:05:22.9495181Z         "impl": {
2026-06-04T13:05:22.9495666Z           "complete": true,
2026-06-04T13:05:22.9496131Z           "evidence": [
2026-06-04T13:05:22.9496572Z             {
2026-06-04T13:05:22.9497390Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T13:05:22.9498301Z               "line": 33
2026-06-04T13:05:22.9498747Z             },
2026-06-04T13:05:22.9499238Z             {
2026-06-04T13:05:22.9500356Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T13:05:22.9500825Z               "line": 45
2026-06-04T13:05:22.9501279Z             },
2026-06-04T13:05:22.9501723Z             {
2026-06-04T13:05:22.9502537Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T13:05:22.9503034Z               "line": 59
2026-06-04T13:05:22.9503490Z             },
2026-06-04T13:05:22.9503939Z             {
2026-06-04T13:05:22.9504656Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9505145Z               "line": 306
2026-06-04T13:05:22.9505604Z             }
2026-06-04T13:05:22.9506035Z           ]
2026-06-04T13:05:22.9506474Z         },
2026-06-04T13:05:22.9506915Z         "int": {
2026-06-04T13:05:22.9507423Z           "complete": false,
2026-06-04T13:05:22.9507932Z           "evidence": []
2026-06-04T13:05:22.9508370Z         },
2026-06-04T13:05:22.9508821Z         "unit": {
2026-06-04T13:05:22.9509528Z           "complete": true,
2026-06-04T13:05:22.9510226Z           "evidence": [
2026-06-04T13:05:22.9510664Z             {
2026-06-04T13:05:22.9511471Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T13:05:22.9511935Z               "line": 72
2026-06-04T13:05:22.9512385Z             },
2026-06-04T13:05:22.9512821Z             {
2026-06-04T13:05:22.9513612Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T13:05:22.9514087Z               "line": 82
2026-06-04T13:05:22.9514509Z             },
2026-06-04T13:05:22.9514949Z             {
2026-06-04T13:05:22.9515743Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T13:05:22.9516225Z               "line": 92
2026-06-04T13:05:22.9523536Z             },
2026-06-04T13:05:22.9524227Z             {
2026-06-04T13:05:22.9525106Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T13:05:22.9525569Z               "line": 102
2026-06-04T13:05:22.9526009Z             },
2026-06-04T13:05:22.9526465Z             {
2026-06-04T13:05:22.9527252Z               "path": "crates/spt-net/src/net/pairing/rendezvous.rs",
2026-06-04T13:05:22.9527723Z               "line": 117
2026-06-04T13:05:22.9528154Z             },
2026-06-04T13:05:22.9528586Z             {
2026-06-04T13:05:22.9529484Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9530135Z               "line": 750
2026-06-04T13:05:22.9530595Z             },
2026-06-04T13:05:22.9531023Z             {
2026-06-04T13:05:22.9531742Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9532196Z               "line": 806
2026-06-04T13:05:22.9532640Z             },
2026-06-04T13:05:22.9533059Z             {
2026-06-04T13:05:22.9533769Z               "path": "crates/spt-net/src/net/pairing/wire.rs",
2026-06-04T13:05:22.9534257Z               "line": 1026
2026-06-04T13:05:22.9534681Z             }
2026-06-04T13:05:22.9535123Z           ]
2026-06-04T13:05:22.9535561Z         }
2026-06-04T13:05:22.9535986Z       }
2026-06-04T13:05:22.9536404Z     },
2026-06-04T13:05:22.9536831Z     {
2026-06-04T13:05:22.9537463Z       "id": "REQ-PAIR-6",
2026-06-04T13:05:22.9539199Z       "title": "Elevation-gated per-subnet code fetch (UAC/root or elevated agent; else authenticator app)",
2026-06-04T13:05:22.9539905Z       "requiredStages": [
2026-06-04T13:05:22.9540348Z         "impl",
2026-06-04T13:05:22.9540794Z         "unit"
2026-06-04T13:05:22.9541220Z       ],
2026-06-04T13:05:22.9541676Z       "stages": {
2026-06-04T13:05:22.9542122Z         "doc": {
2026-06-04T13:05:22.9542601Z           "complete": false,
2026-06-04T13:05:22.9543066Z           "evidence": []
2026-06-04T13:05:22.9543489Z         },
2026-06-04T13:05:22.9543932Z         "impl": {
2026-06-04T13:05:22.9544404Z           "complete": true,
2026-06-04T13:05:22.9545385Z           "evidence": [
2026-06-04T13:05:22.9545824Z             {
2026-06-04T13:05:22.9546373Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9547017Z               "line": 829
2026-06-04T13:05:22.9547453Z             },
2026-06-04T13:05:22.9547891Z             {
2026-06-04T13:05:22.9548448Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9548934Z               "line": 889
2026-06-04T13:05:22.9549599Z             },
2026-06-04T13:05:22.9550196Z             {
2026-06-04T13:05:22.9550821Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T13:05:22.9551275Z               "line": 18
2026-06-04T13:05:22.9551712Z             },
2026-06-04T13:05:22.9552132Z             {
2026-06-04T13:05:22.9552736Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T13:05:22.9553199Z               "line": 49
2026-06-04T13:05:22.9553630Z             },
2026-06-04T13:05:22.9554063Z             {
2026-06-04T13:05:22.9554671Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T13:05:22.9555152Z               "line": 70
2026-06-04T13:05:22.9555579Z             }
2026-06-04T13:05:22.9556019Z           ]
2026-06-04T13:05:22.9556460Z         },
2026-06-04T13:05:22.9556883Z         "int": {
2026-06-04T13:05:22.9557374Z           "complete": false,
2026-06-04T13:05:22.9557834Z           "evidence": []
2026-06-04T13:05:22.9558259Z         },
2026-06-04T13:05:22.9558698Z         "unit": {
2026-06-04T13:05:22.9559240Z           "complete": true,
2026-06-04T13:05:22.9560056Z           "evidence": [
2026-06-04T13:05:22.9560504Z             {
2026-06-04T13:05:22.9561072Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9561536Z               "line": 1369
2026-06-04T13:05:22.9561971Z             },
2026-06-04T13:05:22.9562395Z             {
2026-06-04T13:05:22.9562971Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:22.9563474Z               "line": 1386
2026-06-04T13:05:22.9563933Z             },
2026-06-04T13:05:22.9564387Z             {
2026-06-04T13:05:22.9565016Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T13:05:22.9565485Z               "line": 132
2026-06-04T13:05:22.9565923Z             },
2026-06-04T13:05:22.9566359Z             {
2026-06-04T13:05:22.9566958Z               "path": "crates/spt/src/elevation.rs",
2026-06-04T13:05:22.9567411Z               "line": 141
2026-06-04T13:05:22.9567868Z             }
2026-06-04T13:05:22.9568311Z           ]
2026-06-04T13:05:22.9568742Z         }
2026-06-04T13:05:22.9569209Z       }
2026-06-04T13:05:22.9569818Z     },
2026-06-04T13:05:22.9570411Z     {
2026-06-04T13:05:22.9570903Z       "id": "REQ-PAIR-7",
2026-06-04T13:05:22.9571853Z       "title": "Subnet icon (inline image metadata, GUI-only consumer)",
2026-06-04T13:05:22.9572396Z       "requiredStages": [],
2026-06-04T13:05:22.9572879Z       "stages": {
2026-06-04T13:05:22.9573344Z         "doc": {
2026-06-04T13:05:22.9573884Z           "complete": false,
2026-06-04T13:05:22.9574411Z           "evidence": []
2026-06-04T13:05:22.9574880Z         },
2026-06-04T13:05:22.9575364Z         "impl": {
2026-06-04T13:05:22.9575875Z           "complete": false,
2026-06-04T13:05:22.9576382Z           "evidence": []
2026-06-04T13:05:22.9576833Z         },
2026-06-04T13:05:22.9577298Z         "int": {
2026-06-04T13:05:22.9577809Z           "complete": false,
2026-06-04T13:05:22.9578283Z           "evidence": []
2026-06-04T13:05:22.9578718Z         },
2026-06-04T13:05:22.9579246Z         "unit": {
2026-06-04T13:05:22.9580091Z           "complete": false,
2026-06-04T13:05:22.9580562Z           "evidence": []
2026-06-04T13:05:22.9581008Z         }
2026-06-04T13:05:22.9581447Z       }
2026-06-04T13:05:22.9581872Z     },
2026-06-04T13:05:22.9582311Z     {
2026-06-04T13:05:22.9582800Z       "id": "REQ-REACH-1",
2026-06-04T13:05:22.9583656Z       "title": "Off-node remote-drive detection + file transfer",
2026-06-04T13:05:22.9584173Z       "requiredStages": [
2026-06-04T13:05:22.9584655Z         "impl",
2026-06-04T13:05:22.9585127Z         "unit"
2026-06-04T13:05:22.9585956Z       ],
2026-06-04T13:05:22.9586429Z       "stages": {
2026-06-04T13:05:22.9586872Z         "doc": {
2026-06-04T13:05:22.9587550Z           "complete": false,
2026-06-04T13:05:22.9588025Z           "evidence": []
2026-06-04T13:05:22.9588478Z         },
2026-06-04T13:05:22.9588932Z         "impl": {
2026-06-04T13:05:22.9589645Z           "complete": true,
2026-06-04T13:05:22.9590330Z           "evidence": [
2026-06-04T13:05:22.9590786Z             {
2026-06-04T13:05:22.9591467Z               "path": "crates/spt-daemon/src/attach.rs",
2026-06-04T13:05:22.9591950Z               "line": 133
2026-06-04T13:05:22.9592396Z             },
2026-06-04T13:05:22.9592839Z             {
2026-06-04T13:05:22.9593469Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T13:05:22.9593956Z               "line": 76
2026-06-04T13:05:22.9594409Z             },
2026-06-04T13:05:22.9594860Z             {
2026-06-04T13:05:22.9595498Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T13:05:22.9596006Z               "line": 209
2026-06-04T13:05:22.9596450Z             },
2026-06-04T13:05:22.9596881Z             {
2026-06-04T13:05:22.9597525Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T13:05:22.9597999Z               "line": 386
2026-06-04T13:05:22.9598458Z             },
2026-06-04T13:05:22.9598895Z             {
2026-06-04T13:05:22.9599910Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T13:05:22.9600424Z               "line": 484
2026-06-04T13:05:22.9600872Z             },
2026-06-04T13:05:22.9601315Z             {
2026-06-04T13:05:22.9601937Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T13:05:22.9602418Z               "line": 39
2026-06-04T13:05:22.9602851Z             },
2026-06-04T13:05:22.9603287Z             {
2026-06-04T13:05:22.9603898Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.9604359Z               "line": 176
2026-06-04T13:05:22.9604797Z             },
2026-06-04T13:05:22.9605239Z             {
2026-06-04T13:05:22.9605852Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T13:05:22.9606321Z               "line": 82
2026-06-04T13:05:22.9606769Z             },
2026-06-04T13:05:22.9607212Z             {
2026-06-04T13:05:22.9607819Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T13:05:22.9608298Z               "line": 92
2026-06-04T13:05:22.9608739Z             },
2026-06-04T13:05:22.9616027Z             {
2026-06-04T13:05:22.9616869Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.9617342Z               "line": 177
2026-06-04T13:05:22.9617782Z             }
2026-06-04T13:05:22.9618209Z           ]
2026-06-04T13:05:22.9618650Z         },
2026-06-04T13:05:22.9619088Z         "int": {
2026-06-04T13:05:22.9619809Z           "complete": true,
2026-06-04T13:05:22.9620272Z           "evidence": [
2026-06-04T13:05:22.9620693Z             {
2026-06-04T13:05:22.9621378Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T13:05:22.9621859Z               "line": 375
2026-06-04T13:05:22.9622294Z             },
2026-06-04T13:05:22.9622706Z             {
2026-06-04T13:05:22.9623399Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T13:05:22.9623865Z               "line": 478
2026-06-04T13:05:22.9624288Z             }
2026-06-04T13:05:22.9624723Z           ]
2026-06-04T13:05:22.9625147Z         },
2026-06-04T13:05:22.9625611Z         "unit": {
2026-06-04T13:05:22.9626081Z           "complete": true,
2026-06-04T13:05:22.9626532Z           "evidence": [
2026-06-04T13:05:22.9626956Z             {
2026-06-04T13:05:22.9627560Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T13:05:22.9628018Z               "line": 585
2026-06-04T13:05:22.9628437Z             },
2026-06-04T13:05:22.9628858Z             {
2026-06-04T13:05:22.9629694Z               "path": "crates/spt-daemon/src/xfer.rs",
2026-06-04T13:05:22.9630340Z               "line": 606
2026-06-04T13:05:22.9630789Z             },
2026-06-04T13:05:22.9631710Z             {
2026-06-04T13:05:22.9632382Z               "path": "crates/spt-daemon/tests/attach.rs",
2026-06-04T13:05:22.9632849Z               "line": 337
2026-06-04T13:05:22.9633449Z             },
2026-06-04T13:05:22.9633890Z             {
2026-06-04T13:05:22.9634553Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T13:05:22.9635014Z               "line": 92
2026-06-04T13:05:22.9635436Z             },
2026-06-04T13:05:22.9635905Z             {
2026-06-04T13:05:22.9636567Z               "path": "crates/spt-daemon/tests/xfer.rs",
2026-06-04T13:05:22.9637071Z               "line": 176
2026-06-04T13:05:22.9637512Z             },
2026-06-04T13:05:22.9637968Z             {
2026-06-04T13:05:22.9638625Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T13:05:22.9639107Z               "line": 92
2026-06-04T13:05:22.9639929Z             },
2026-06-04T13:05:22.9640374Z             {
2026-06-04T13:05:22.9641003Z               "path": "crates/spt-net/src/net/xfer.rs",
2026-06-04T13:05:22.9641486Z               "line": 123
2026-06-04T13:05:22.9641930Z             },
2026-06-04T13:05:22.9642379Z             {
2026-06-04T13:05:22.9643007Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:22.9643485Z               "line": 367
2026-06-04T13:05:22.9643912Z             },
2026-06-04T13:05:22.9644353Z             {
2026-06-04T13:05:22.9644972Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T13:05:22.9645477Z               "line": 112
2026-06-04T13:05:22.9645927Z             },
2026-06-04T13:05:22.9646384Z             {
2026-06-04T13:05:22.9647067Z               "path": "crates/spt-store/src/xfer.rs",
2026-06-04T13:05:22.9647555Z               "line": 136
2026-06-04T13:05:22.9648018Z             },
2026-06-04T13:05:22.9648462Z             {
2026-06-04T13:05:22.9649147Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.9649850Z               "line": 396
2026-06-04T13:05:22.9650438Z             }
2026-06-04T13:05:22.9650893Z           ]
2026-06-04T13:05:22.9651314Z         }
2026-06-04T13:05:22.9651752Z       }
2026-06-04T13:05:22.9652179Z     },
2026-06-04T13:05:22.9652645Z     {
2026-06-04T13:05:22.9653151Z       "id": "REQ-REACH-2",
2026-06-04T13:05:22.9654056Z       "title": "Remote command execution (deferred, consent-gated)",
2026-06-04T13:05:22.9654585Z       "requiredStages": [],
2026-06-04T13:05:22.9655072Z       "stages": {
2026-06-04T13:05:22.9655544Z         "doc": {
2026-06-04T13:05:22.9656027Z           "complete": false,
2026-06-04T13:05:22.9656521Z           "evidence": []
2026-06-04T13:05:22.9656965Z         },
2026-06-04T13:05:22.9657411Z         "impl": {
2026-06-04T13:05:22.9657908Z           "complete": false,
2026-06-04T13:05:22.9658373Z           "evidence": []
2026-06-04T13:05:22.9658820Z         },
2026-06-04T13:05:22.9659485Z         "int": {
2026-06-04T13:05:22.9660182Z           "complete": false,
2026-06-04T13:05:22.9660683Z           "evidence": []
2026-06-04T13:05:22.9661115Z         },
2026-06-04T13:05:22.9661594Z         "unit": {
2026-06-04T13:05:22.9662081Z           "complete": false,
2026-06-04T13:05:22.9662551Z           "evidence": []
2026-06-04T13:05:22.9662997Z         }
2026-06-04T13:05:22.9663441Z       }
2026-06-04T13:05:22.9663889Z     },
2026-06-04T13:05:22.9664341Z     {
2026-06-04T13:05:22.9664914Z       "id": "REQ-SEAM-ACTIVITY",
2026-06-04T13:05:22.9665994Z       "title": "Activity/idle reported via api sentinels, not PTY quiescence",
2026-06-04T13:05:22.9666549Z       "requiredStages": [
2026-06-04T13:05:22.9667009Z         "impl",
2026-06-04T13:05:22.9667462Z         "unit"
2026-06-04T13:05:22.9667910Z       ],
2026-06-04T13:05:22.9668365Z       "stages": {
2026-06-04T13:05:22.9668825Z         "doc": {
2026-06-04T13:05:22.9669592Z           "complete": false,
2026-06-04T13:05:22.9670276Z           "evidence": []
2026-06-04T13:05:22.9670708Z         },
2026-06-04T13:05:22.9671164Z         "impl": {
2026-06-04T13:05:22.9671665Z           "complete": true,
2026-06-04T13:05:22.9672543Z           "evidence": [
2026-06-04T13:05:22.9672985Z             {
2026-06-04T13:05:22.9673634Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.9674298Z               "line": 18
2026-06-04T13:05:22.9674734Z             },
2026-06-04T13:05:22.9675173Z             {
2026-06-04T13:05:22.9675807Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.9676249Z               "line": 35
2026-06-04T13:05:22.9676692Z             },
2026-06-04T13:05:22.9677133Z             {
2026-06-04T13:05:22.9677782Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.9678237Z               "line": 65
2026-06-04T13:05:22.9678677Z             }
2026-06-04T13:05:22.9679110Z           ]
2026-06-04T13:05:22.9679595Z         },
2026-06-04T13:05:22.9680047Z         "int": {
2026-06-04T13:05:22.9680539Z           "complete": false,
2026-06-04T13:05:22.9681020Z           "evidence": []
2026-06-04T13:05:22.9681454Z         },
2026-06-04T13:05:22.9681934Z         "unit": {
2026-06-04T13:05:22.9682422Z           "complete": true,
2026-06-04T13:05:22.9682886Z           "evidence": [
2026-06-04T13:05:22.9683341Z             {
2026-06-04T13:05:22.9684003Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.9684525Z               "line": 170
2026-06-04T13:05:22.9684982Z             },
2026-06-04T13:05:22.9685450Z             {
2026-06-04T13:05:22.9686110Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.9686594Z               "line": 184
2026-06-04T13:05:22.9687138Z             },
2026-06-04T13:05:22.9687586Z             {
2026-06-04T13:05:22.9688237Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.9688780Z               "line": 193
2026-06-04T13:05:22.9689291Z             }
2026-06-04T13:05:22.9689736Z           ]
2026-06-04T13:05:22.9690228Z         }
2026-06-04T13:05:22.9690670Z       }
2026-06-04T13:05:22.9691106Z     },
2026-06-04T13:05:22.9691580Z     {
2026-06-04T13:05:22.9692230Z       "id": "REQ-SEAM-CAPABILITY",
2026-06-04T13:05:22.9693156Z       "title": "Hostable endpoint-types capability declaration",
2026-06-04T13:05:22.9693701Z       "requiredStages": [
2026-06-04T13:05:22.9694159Z         "impl",
2026-06-04T13:05:22.9694643Z         "unit"
2026-06-04T13:05:22.9695080Z       ],
2026-06-04T13:05:22.9695537Z       "stages": {
2026-06-04T13:05:22.9695989Z         "doc": {
2026-06-04T13:05:22.9696509Z           "complete": false,
2026-06-04T13:05:22.9696998Z           "evidence": []
2026-06-04T13:05:22.9697432Z         },
2026-06-04T13:05:22.9697881Z         "impl": {
2026-06-04T13:05:22.9698368Z           "complete": true,
2026-06-04T13:05:22.9698852Z           "evidence": [
2026-06-04T13:05:22.9699490Z             {
2026-06-04T13:05:22.9700380Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.9707401Z               "line": 262
2026-06-04T13:05:22.9708099Z             }
2026-06-04T13:05:22.9708546Z           ]
2026-06-04T13:05:22.9708967Z         },
2026-06-04T13:05:22.9709767Z         "int": {
2026-06-04T13:05:22.9710439Z           "complete": false,
2026-06-04T13:05:22.9711098Z           "evidence": []
2026-06-04T13:05:22.9711584Z         },
2026-06-04T13:05:22.9712032Z         "unit": {
2026-06-04T13:05:22.9712534Z           "complete": true,
2026-06-04T13:05:22.9712999Z           "evidence": [
2026-06-04T13:05:22.9713448Z             {
2026-06-04T13:05:22.9714146Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:22.9715284Z               "line": 429
2026-06-04T13:05:22.9715916Z             }
2026-06-04T13:05:22.9716360Z           ]
2026-06-04T13:05:22.9716814Z         }
2026-06-04T13:05:22.9717241Z       }
2026-06-04T13:05:22.9717688Z     },
2026-06-04T13:05:22.9718121Z     {
2026-06-04T13:05:22.9718652Z       "id": "REQ-SEAM-HISTORY",
2026-06-04T13:05:22.9720123Z       "title": "History subsystem (fetcher / locate-normalize / native store)",
2026-06-04T13:05:22.9720764Z       "requiredStages": [
2026-06-04T13:05:22.9722095Z         "impl",
2026-06-04T13:05:22.9722643Z         "unit",
2026-06-04T13:05:22.9723190Z         "int"
2026-06-04T13:05:22.9723691Z       ],
2026-06-04T13:05:22.9724496Z       "stages": {
2026-06-04T13:05:22.9724983Z         "doc": {
2026-06-04T13:05:22.9725510Z           "complete": false,
2026-06-04T13:05:22.9726034Z           "evidence": []
2026-06-04T13:05:22.9726481Z         },
2026-06-04T13:05:22.9726963Z         "impl": {
2026-06-04T13:05:22.9727490Z           "complete": true,
2026-06-04T13:05:22.9728008Z           "evidence": [
2026-06-04T13:05:22.9728482Z             {
2026-06-04T13:05:22.9729146Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T13:05:22.9730074Z               "line": 24
2026-06-04T13:05:22.9730585Z             },
2026-06-04T13:05:22.9731229Z             {
2026-06-04T13:05:22.9731883Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T13:05:22.9732361Z               "line": 22
2026-06-04T13:05:22.9732818Z             }
2026-06-04T13:05:22.9733251Z           ]
2026-06-04T13:05:22.9733733Z         },
2026-06-04T13:05:22.9734180Z         "int": {
2026-06-04T13:05:22.9734680Z           "complete": true,
2026-06-04T13:05:22.9735187Z           "evidence": [
2026-06-04T13:05:22.9735645Z             {
2026-06-04T13:05:22.9736352Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T13:05:22.9736853Z               "line": 202
2026-06-04T13:05:22.9737320Z             }
2026-06-04T13:05:22.9737767Z           ]
2026-06-04T13:05:22.9738218Z         },
2026-06-04T13:05:22.9738684Z         "unit": {
2026-06-04T13:05:22.9739252Z           "complete": true,
2026-06-04T13:05:22.9739926Z           "evidence": [
2026-06-04T13:05:22.9740377Z             {
2026-06-04T13:05:22.9741036Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T13:05:22.9741538Z               "line": 163
2026-06-04T13:05:22.9742007Z             },
2026-06-04T13:05:22.9742460Z             {
2026-06-04T13:05:22.9743099Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T13:05:22.9743621Z               "line": 186
2026-06-04T13:05:22.9744073Z             },
2026-06-04T13:05:22.9744541Z             {
2026-06-04T13:05:22.9745204Z               "path": "crates/spt-live/src/echo.rs",
2026-06-04T13:05:22.9745708Z               "line": 195
2026-06-04T13:05:22.9746157Z             },
2026-06-04T13:05:22.9746617Z             {
2026-06-04T13:05:22.9747315Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T13:05:22.9747813Z               "line": 195
2026-06-04T13:05:22.9748263Z             },
2026-06-04T13:05:22.9748708Z             {
2026-06-04T13:05:22.9749449Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T13:05:22.9749984Z               "line": 209
2026-06-04T13:05:22.9750469Z             },
2026-06-04T13:05:22.9750930Z             {
2026-06-04T13:05:22.9751603Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T13:05:22.9752129Z               "line": 228
2026-06-04T13:05:22.9752722Z             },
2026-06-04T13:05:22.9753215Z             {
2026-06-04T13:05:22.9753905Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T13:05:22.9754400Z               "line": 248
2026-06-04T13:05:22.9754878Z             },
2026-06-04T13:05:22.9755334Z             {
2026-06-04T13:05:22.9756024Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T13:05:22.9756516Z               "line": 264
2026-06-04T13:05:22.9756981Z             },
2026-06-04T13:05:22.9757432Z             {
2026-06-04T13:05:22.9758116Z               "path": "crates/spt-live/src/history.rs",
2026-06-04T13:05:22.9758608Z               "line": 279
2026-06-04T13:05:22.9759053Z             }
2026-06-04T13:05:22.9759579Z           ]
2026-06-04T13:05:22.9760051Z         }
2026-06-04T13:05:22.9760504Z       }
2026-06-04T13:05:22.9760966Z     },
2026-06-04T13:05:22.9761452Z     {
2026-06-04T13:05:22.9762067Z       "id": "REQ-SEAM-INJECT",
2026-06-04T13:05:22.9763104Z       "title": "inject-input methods configurable per activity-state",
2026-06-04T13:05:22.9764018Z       "requiredStages": [
2026-06-04T13:05:22.9764474Z         "impl",
2026-06-04T13:05:22.9764936Z         "unit"
2026-06-04T13:05:22.9765385Z       ],
2026-06-04T13:05:22.9766056Z       "stages": {
2026-06-04T13:05:22.9766535Z         "doc": {
2026-06-04T13:05:22.9767045Z           "complete": false,
2026-06-04T13:05:22.9767561Z           "evidence": []
2026-06-04T13:05:22.9768013Z         },
2026-06-04T13:05:22.9768491Z         "impl": {
2026-06-04T13:05:22.9769015Z           "complete": true,
2026-06-04T13:05:22.9769736Z           "evidence": [
2026-06-04T13:05:22.9770233Z             {
2026-06-04T13:05:22.9770909Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.9771375Z               "line": 19
2026-06-04T13:05:22.9771811Z             },
2026-06-04T13:05:22.9772248Z             {
2026-06-04T13:05:22.9772898Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.9773370Z               "line": 104
2026-06-04T13:05:22.9773809Z             }
2026-06-04T13:05:22.9774259Z           ]
2026-06-04T13:05:22.9774690Z         },
2026-06-04T13:05:22.9775133Z         "int": {
2026-06-04T13:05:22.9775632Z           "complete": false,
2026-06-04T13:05:22.9776134Z           "evidence": []
2026-06-04T13:05:22.9776569Z         },
2026-06-04T13:05:22.9777032Z         "unit": {
2026-06-04T13:05:22.9777532Z           "complete": true,
2026-06-04T13:05:22.9778065Z           "evidence": [
2026-06-04T13:05:22.9778529Z             {
2026-06-04T13:05:22.9779271Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.9780079Z               "line": 222
2026-06-04T13:05:22.9780521Z             },
2026-06-04T13:05:22.9780958Z             {
2026-06-04T13:05:22.9781608Z               "path": "crates/spt/src/api/delivery.rs",
2026-06-04T13:05:22.9782091Z               "line": 236
2026-06-04T13:05:22.9782520Z             }
2026-06-04T13:05:22.9782980Z           ]
2026-06-04T13:05:22.9783442Z         }
2026-06-04T13:05:22.9783874Z       }
2026-06-04T13:05:22.9784344Z     },
2026-06-04T13:05:22.9784777Z     {
2026-06-04T13:05:22.9785311Z       "id": "REQ-SEAM-POSTSPAWN",
2026-06-04T13:05:22.9786060Z       "title": "post-spawn / api bind seam with boot nonce",
2026-06-04T13:05:22.9786582Z       "requiredStages": [
2026-06-04T13:05:22.9787045Z         "impl",
2026-06-04T13:05:22.9787480Z         "unit"
2026-06-04T13:05:22.9787913Z       ],
2026-06-04T13:05:22.9788354Z       "stages": {
2026-06-04T13:05:22.9788788Z         "doc": {
2026-06-04T13:05:22.9789495Z           "complete": false,
2026-06-04T13:05:22.9790019Z           "evidence": []
2026-06-04T13:05:22.9790484Z         },
2026-06-04T13:05:22.9790949Z         "impl": {
2026-06-04T13:05:22.9791458Z           "complete": true,
2026-06-04T13:05:22.9791940Z           "evidence": [
2026-06-04T13:05:22.9792412Z             {
2026-06-04T13:05:22.9793131Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:22.9793717Z               "line": 18
2026-06-04T13:05:22.9803036Z             },
2026-06-04T13:05:22.9804269Z             {
2026-06-04T13:05:22.9805616Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:22.9807307Z               "line": 263
2026-06-04T13:05:22.9808662Z             }
2026-06-04T13:05:22.9809941Z           ]
2026-06-04T13:05:22.9811048Z         },
2026-06-04T13:05:22.9812095Z         "int": {
2026-06-04T13:05:22.9813306Z           "complete": false,
2026-06-04T13:05:22.9814717Z           "evidence": []
2026-06-04T13:05:22.9815947Z         },
2026-06-04T13:05:22.9817087Z         "unit": {
2026-06-04T13:05:22.9818304Z           "complete": true,
2026-06-04T13:05:22.9819765Z           "evidence": [
2026-06-04T13:05:22.9821037Z             {
2026-06-04T13:05:22.9822326Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:22.9824002Z               "line": 429
2026-06-04T13:05:22.9825248Z             },
2026-06-04T13:05:22.9826377Z             {
2026-06-04T13:05:22.9827747Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:22.9830078Z               "line": 439
2026-06-04T13:05:22.9831279Z             }
2026-06-04T13:05:22.9832376Z           ]
2026-06-04T13:05:22.9833406Z         }
2026-06-04T13:05:22.9834700Z       }
2026-06-04T13:05:22.9835659Z     },
2026-06-04T13:05:22.9836611Z     {
2026-06-04T13:05:22.9837659Z       "id": "REQ-SEAM-PSYCHE",
2026-06-04T13:05:22.9839646Z       "title": "spawn-psyche seam (fresh + resume templates)",
2026-06-04T13:05:22.9841748Z       "requiredStages": [
2026-06-04T13:05:22.9842953Z         "impl",
2026-06-04T13:05:22.9844037Z         "unit",
2026-06-04T13:05:22.9845343Z         "int"
2026-06-04T13:05:22.9846523Z       ],
2026-06-04T13:05:22.9847657Z       "stages": {
2026-06-04T13:05:22.9848807Z         "doc": {
2026-06-04T13:05:22.9850214Z           "complete": false,
2026-06-04T13:05:22.9851866Z           "evidence": []
2026-06-04T13:05:22.9853037Z         },
2026-06-04T13:05:22.9854038Z         "impl": {
2026-06-04T13:05:22.9855155Z           "complete": true,
2026-06-04T13:05:22.9856606Z           "evidence": [
2026-06-04T13:05:22.9857846Z             {
2026-06-04T13:05:22.9859135Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T13:05:22.9860962Z               "line": 19
2026-06-04T13:05:22.9862141Z             },
2026-06-04T13:05:22.9863171Z             {
2026-06-04T13:05:22.9864401Z               "path": "crates/spt/src/api/live.rs",
2026-06-04T13:05:22.9865966Z               "line": 12
2026-06-04T13:05:22.9867118Z             },
2026-06-04T13:05:22.9868127Z             {
2026-06-04T13:05:22.9869571Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:22.9871305Z               "line": 164
2026-06-04T13:05:22.9872468Z             }
2026-06-04T13:05:22.9873489Z           ]
2026-06-04T13:05:22.9874465Z         },
2026-06-04T13:05:22.9875450Z         "int": {
2026-06-04T13:05:22.9876544Z           "complete": true,
2026-06-04T13:05:22.9877761Z           "evidence": [
2026-06-04T13:05:22.9878881Z             {
2026-06-04T13:05:22.9880389Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T13:05:22.9882132Z               "line": 201
2026-06-04T13:05:22.9883374Z             }
2026-06-04T13:05:22.9884463Z           ]
2026-06-04T13:05:22.9885606Z         },
2026-06-04T13:05:22.9886685Z         "unit": {
2026-06-04T13:05:22.9887842Z           "complete": true,
2026-06-04T13:05:22.9889124Z           "evidence": [
2026-06-04T13:05:22.9890454Z             {
2026-06-04T13:05:22.9891670Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T13:05:22.9893234Z               "line": 161
2026-06-04T13:05:22.9894388Z             },
2026-06-04T13:05:22.9895406Z             {
2026-06-04T13:05:22.9896610Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T13:05:22.9898253Z               "line": 168
2026-06-04T13:05:22.9907080Z             },
2026-06-04T13:05:22.9908343Z             {
2026-06-04T13:05:22.9909823Z               "path": "crates/spt-live/src/psyche.rs",
2026-06-04T13:05:22.9911584Z               "line": 191
2026-06-04T13:05:22.9913096Z             },
2026-06-04T13:05:22.9914247Z             {
2026-06-04T13:05:22.9915520Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T13:05:22.9917184Z               "line": 106
2026-06-04T13:05:22.9918389Z             },
2026-06-04T13:05:22.9919693Z             {
2026-06-04T13:05:22.9920933Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T13:05:22.9922489Z               "line": 123
2026-06-04T13:05:22.9923641Z             },
2026-06-04T13:05:22.9924662Z             {
2026-06-04T13:05:22.9925876Z               "path": "crates/spt-live/src/pulse.rs",
2026-06-04T13:05:22.9927482Z               "line": 137
2026-06-04T13:05:22.9928691Z             }
2026-06-04T13:05:22.9930143Z           ]
2026-06-04T13:05:22.9931160Z         }
2026-06-04T13:05:22.9932263Z       }
2026-06-04T13:05:22.9933232Z     },
2026-06-04T13:05:22.9934189Z     {
2026-06-04T13:05:22.9935246Z       "id": "REQ-SEAM-RESUME",
2026-06-04T13:05:22.9937182Z       "title": "resume-session seam (fresh-with-preload / continue-existing)",
2026-06-04T13:05:22.9940218Z       "requiredStages": [
2026-06-04T13:05:22.9941438Z         "impl",
2026-06-04T13:05:22.9942459Z         "unit"
2026-06-04T13:05:22.9943696Z       ],
2026-06-04T13:05:22.9944674Z       "stages": {
2026-06-04T13:05:22.9945724Z         "doc": {
2026-06-04T13:05:22.9946806Z           "complete": false,
2026-06-04T13:05:22.9948071Z           "evidence": []
2026-06-04T13:05:22.9949437Z         },
2026-06-04T13:05:22.9950644Z         "impl": {
2026-06-04T13:05:22.9951771Z           "complete": true,
2026-06-04T13:05:22.9953013Z           "evidence": [
2026-06-04T13:05:22.9954195Z             {
2026-06-04T13:05:22.9955424Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T13:05:22.9956971Z               "line": 19
2026-06-04T13:05:22.9958123Z             }
2026-06-04T13:05:22.9959127Z           ]
2026-06-04T13:05:22.9960186Z         },
2026-06-04T13:05:22.9961172Z         "int": {
2026-06-04T13:05:22.9962304Z           "complete": false,
2026-06-04T13:05:22.9963622Z           "evidence": []
2026-06-04T13:05:22.9964868Z         },
2026-06-04T13:05:22.9965906Z         "unit": {
2026-06-04T13:05:22.9967045Z           "complete": true,
2026-06-04T13:05:22.9968318Z           "evidence": [
2026-06-04T13:05:22.9969660Z             {
2026-06-04T13:05:22.9971047Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T13:05:22.9972597Z               "line": 168
2026-06-04T13:05:22.9973773Z             },
2026-06-04T13:05:22.9974838Z             {
2026-06-04T13:05:22.9976077Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T13:05:22.9977678Z               "line": 187
2026-06-04T13:05:22.9978860Z             },
2026-06-04T13:05:22.9980270Z             {
2026-06-04T13:05:22.9981525Z               "path": "crates/spt-live/src/resume.rs",
2026-06-04T13:05:22.9983100Z               "line": 205
2026-06-04T13:05:22.9984348Z             }
2026-06-04T13:05:22.9985411Z           ]
2026-06-04T13:05:22.9986415Z         }
2026-06-04T13:05:22.9987416Z       }
2026-06-04T13:05:22.9988373Z     },
2026-06-04T13:05:22.9989552Z     {
2026-06-04T13:05:22.9990762Z       "id": "REQ-SEAM-SPAWN",
2026-06-04T13:05:22.9992166Z       "title": "spawn-session seam",
2026-06-04T13:05:22.9993635Z       "requiredStages": [
2026-06-04T13:05:22.9994857Z         "impl",
2026-06-04T13:05:22.9995949Z         "unit"
2026-06-04T13:05:22.9997019Z       ],
2026-06-04T13:05:22.9998030Z       "stages": {
2026-06-04T13:05:22.9999080Z         "doc": {
2026-06-04T13:05:23.0000527Z           "complete": false,
2026-06-04T13:05:23.0001893Z           "evidence": []
2026-06-04T13:05:23.0003115Z         },
2026-06-04T13:05:23.0004156Z         "impl": {
2026-06-04T13:05:23.0005364Z           "complete": true,
2026-06-04T13:05:23.0006673Z           "evidence": [
2026-06-04T13:05:23.0007867Z             {
2026-06-04T13:05:23.0009274Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T13:05:23.0018317Z               "line": 20
2026-06-04T13:05:23.0019935Z             }
2026-06-04T13:05:23.0021164Z           ]
2026-06-04T13:05:23.0022149Z         },
2026-06-04T13:05:23.0023131Z         "int": {
2026-06-04T13:05:23.0024242Z           "complete": false,
2026-06-04T13:05:23.0025554Z           "evidence": []
2026-06-04T13:05:23.0026733Z         },
2026-06-04T13:05:23.0027721Z         "unit": {
2026-06-04T13:05:23.0028834Z           "complete": true,
2026-06-04T13:05:23.0030464Z           "evidence": [
2026-06-04T13:05:23.0031603Z             {
2026-06-04T13:05:23.0032873Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T13:05:23.0034536Z               "line": 397
2026-06-04T13:05:23.0035736Z             },
2026-06-04T13:05:23.0036761Z             {
2026-06-04T13:05:23.0038070Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T13:05:23.0039963Z               "line": 404
2026-06-04T13:05:23.0041189Z             },
2026-06-04T13:05:23.0042257Z             {
2026-06-04T13:05:23.0043570Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T13:05:23.0045884Z               "line": 414
2026-06-04T13:05:23.0047308Z             },
2026-06-04T13:05:23.0048438Z             {
2026-06-04T13:05:23.0050374Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T13:05:23.0052006Z               "line": 420
2026-06-04T13:05:23.0053174Z             },
2026-06-04T13:05:23.0054206Z             {
2026-06-04T13:05:23.0055505Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T13:05:23.0057216Z               "line": 440
2026-06-04T13:05:23.0058425Z             },
2026-06-04T13:05:23.0059851Z             {
2026-06-04T13:05:23.0061134Z               "path": "crates/spt-runtime/src/runtime.rs",
2026-06-04T13:05:23.0062756Z               "line": 473
2026-06-04T13:05:23.0063923Z             }
2026-06-04T13:05:23.0064962Z           ]
2026-06-04T13:05:23.0065984Z         }
2026-06-04T13:05:23.0066971Z       }
2026-06-04T13:05:23.0067928Z     },
2026-06-04T13:05:23.0068887Z     {
2026-06-04T13:05:23.0070392Z       "id": "REQ-SEAM-UPDATE",
2026-06-04T13:05:23.0072292Z       "title": "Adapter-update avenue (file-pull / delegated command)",
2026-06-04T13:05:23.0074235Z       "requiredStages": [
2026-06-04T13:05:23.0075481Z         "impl",
2026-06-04T13:05:23.0076523Z         "unit"
2026-06-04T13:05:23.0077545Z       ],
2026-06-04T13:05:23.0078542Z       "stages": {
2026-06-04T13:05:23.0079896Z         "doc": {
2026-06-04T13:05:23.0081265Z           "complete": false,
2026-06-04T13:05:23.0082571Z           "evidence": []
2026-06-04T13:05:23.0083760Z         },
2026-06-04T13:05:23.0084752Z         "impl": {
2026-06-04T13:05:23.0085866Z           "complete": true,
2026-06-04T13:05:23.0087183Z           "evidence": [
2026-06-04T13:05:23.0088389Z             {
2026-06-04T13:05:23.0089844Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0091534Z               "line": 28
2026-06-04T13:05:23.0092721Z             },
2026-06-04T13:05:23.0093784Z             {
2026-06-04T13:05:23.0095166Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0096963Z               "line": 83
2026-06-04T13:05:23.0098141Z             }
2026-06-04T13:05:23.0099246Z           ]
2026-06-04T13:05:23.0100280Z         },
2026-06-04T13:05:23.0101302Z         "int": {
2026-06-04T13:05:23.0102451Z           "complete": false,
2026-06-04T13:05:23.0103748Z           "evidence": []
2026-06-04T13:05:23.0104917Z         },
2026-06-04T13:05:23.0105911Z         "unit": {
2026-06-04T13:05:23.0107034Z           "complete": true,
2026-06-04T13:05:23.0108350Z           "evidence": [
2026-06-04T13:05:23.0109730Z             {
2026-06-04T13:05:23.0111260Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0112961Z               "line": 248
2026-06-04T13:05:23.0114152Z             },
2026-06-04T13:05:23.0115168Z             {
2026-06-04T13:05:23.0116472Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0118158Z               "line": 259
2026-06-04T13:05:23.0119403Z             }
2026-06-04T13:05:23.0120450Z           ]
2026-06-04T13:05:23.0121434Z         }
2026-06-04T13:05:23.0122380Z       }
2026-06-04T13:05:23.0130944Z     },
2026-06-04T13:05:23.0131992Z     {
2026-06-04T13:05:23.0132954Z       "id": "REQ-SEC-1",
2026-06-04T13:05:23.0136334Z       "title": "Per-endpoint access whitelist: origin-node gate, stateful-firewall (reply/outbound exempt), node-now/user-later, outer gate before grants",
2026-06-04T13:05:23.0140026Z       "requiredStages": [
2026-06-04T13:05:23.0141267Z         "impl",
2026-06-04T13:05:23.0142303Z         "unit"
2026-06-04T13:05:23.0143314Z       ],
2026-06-04T13:05:23.0144324Z       "stages": {
2026-06-04T13:05:23.0145411Z         "doc": {
2026-06-04T13:05:23.0146541Z           "complete": false,
2026-06-04T13:05:23.0147837Z           "evidence": []
2026-06-04T13:05:23.0149014Z         },
2026-06-04T13:05:23.0150480Z         "impl": {
2026-06-04T13:05:23.0151631Z           "complete": true,
2026-06-04T13:05:23.0152877Z           "evidence": [
2026-06-04T13:05:23.0154588Z             {
2026-06-04T13:05:23.0155869Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T13:05:23.0157673Z               "line": 84
2026-06-04T13:05:23.0158843Z             },
2026-06-04T13:05:23.0160271Z             {
2026-06-04T13:05:23.0161534Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T13:05:23.0163151Z               "line": 114
2026-06-04T13:05:23.0164337Z             },
2026-06-04T13:05:23.0165397Z             {
2026-06-04T13:05:23.0166661Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T13:05:23.0168321Z               "line": 128
2026-06-04T13:05:23.0169571Z             },
2026-06-04T13:05:23.0170627Z             {
2026-06-04T13:05:23.0171868Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T13:05:23.0173475Z               "line": 108
2026-06-04T13:05:23.0174638Z             },
2026-06-04T13:05:23.0175666Z             {
2026-06-04T13:05:23.0176866Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T13:05:23.0178515Z               "line": 129
2026-06-04T13:05:23.0179724Z             },
2026-06-04T13:05:23.0180783Z             {
2026-06-04T13:05:23.0182080Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T13:05:23.0183752Z               "line": 142
2026-06-04T13:05:23.0184978Z             },
2026-06-04T13:05:23.0186019Z             {
2026-06-04T13:05:23.0187251Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T13:05:23.0188840Z               "line": 208
2026-06-04T13:05:23.0190410Z             },
2026-06-04T13:05:23.0191482Z             {
2026-06-04T13:05:23.0192770Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T13:05:23.0194409Z               "line": 234
2026-06-04T13:05:23.0195602Z             },
2026-06-04T13:05:23.0196657Z             {
2026-06-04T13:05:23.0197850Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:23.0199589Z               "line": 919
2026-06-04T13:05:23.0201048Z             }
2026-06-04T13:05:23.0202132Z           ]
2026-06-04T13:05:23.0203155Z         },
2026-06-04T13:05:23.0204178Z         "int": {
2026-06-04T13:05:23.0205285Z           "complete": false,
2026-06-04T13:05:23.0206583Z           "evidence": []
2026-06-04T13:05:23.0207751Z         },
2026-06-04T13:05:23.0208795Z         "unit": {
2026-06-04T13:05:23.0210377Z           "complete": true,
2026-06-04T13:05:23.0211677Z           "evidence": [
2026-06-04T13:05:23.0212857Z             {
2026-06-04T13:05:23.0214128Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T13:05:23.0215776Z               "line": 140
2026-06-04T13:05:23.0216999Z             },
2026-06-04T13:05:23.0218042Z             {
2026-06-04T13:05:23.0219534Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T13:05:23.0221299Z               "line": 186
2026-06-04T13:05:23.0222570Z             },
2026-06-04T13:05:23.0223660Z             {
2026-06-04T13:05:23.0225035Z               "path": "crates/spt-daemon/src/access.rs",
2026-06-04T13:05:23.0226787Z               "line": 218
2026-06-04T13:05:23.0228030Z             },
2026-06-04T13:05:23.0229110Z             {
2026-06-04T13:05:23.0230646Z               "path": "crates/spt-daemon/tests/access.rs",
2026-06-04T13:05:23.0232296Z               "line": 128
2026-06-04T13:05:23.0233512Z             },
2026-06-04T13:05:23.0234543Z             {
2026-06-04T13:05:23.0235749Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T13:05:23.0237345Z               "line": 248
2026-06-04T13:05:23.0238562Z             },
2026-06-04T13:05:23.0239914Z             {
2026-06-04T13:05:23.0249372Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T13:05:23.0251074Z               "line": 275
2026-06-04T13:05:23.0252300Z             },
2026-06-04T13:05:23.0253335Z             {
2026-06-04T13:05:23.0254580Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T13:05:23.0256166Z               "line": 299
2026-06-04T13:05:23.0257361Z             },
2026-06-04T13:05:23.0258992Z             {
2026-06-04T13:05:23.0260311Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T13:05:23.0261890Z               "line": 310
2026-06-04T13:05:23.0263331Z             },
2026-06-04T13:05:23.0264390Z             {
2026-06-04T13:05:23.0265610Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T13:05:23.0267217Z               "line": 334
2026-06-04T13:05:23.0268394Z             },
2026-06-04T13:05:23.0269490Z             {
2026-06-04T13:05:23.0270745Z               "path": "crates/spt-store/src/access.rs",
2026-06-04T13:05:23.0272416Z               "line": 350
2026-06-04T13:05:23.0273641Z             },
2026-06-04T13:05:23.0274710Z             {
2026-06-04T13:05:23.0275861Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:23.0277359Z               "line": 1173
2026-06-04T13:05:23.0278559Z             }
2026-06-04T13:05:23.0279833Z           ]
2026-06-04T13:05:23.0281056Z         }
2026-06-04T13:05:23.0282030Z       }
2026-06-04T13:05:23.0283062Z     },
2026-06-04T13:05:23.0284025Z     {
2026-06-04T13:05:23.0285098Z       "id": "REQ-START-1",
2026-06-04T13:05:23.0287092Z       "title": "Adapters never resolve SPT_HOME; binary on PATH; api bridging only",
2026-06-04T13:05:23.0289535Z       "requiredStages": [
2026-06-04T13:05:23.0290937Z         "impl",
2026-06-04T13:05:23.0292048Z         "unit"
2026-06-04T13:05:23.0293069Z       ],
2026-06-04T13:05:23.0294056Z       "stages": {
2026-06-04T13:05:23.0295135Z         "doc": {
2026-06-04T13:05:23.0296277Z           "complete": false,
2026-06-04T13:05:23.0297580Z           "evidence": []
2026-06-04T13:05:23.0298785Z         },
2026-06-04T13:05:23.0300220Z         "impl": {
2026-06-04T13:05:23.0301374Z           "complete": true,
2026-06-04T13:05:23.0302618Z           "evidence": [
2026-06-04T13:05:23.0303750Z             {
2026-06-04T13:05:23.0304937Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T13:05:23.0306474Z               "line": 16
2026-06-04T13:05:23.0307640Z             }
2026-06-04T13:05:23.0308707Z           ]
2026-06-04T13:05:23.0309910Z         },
2026-06-04T13:05:23.0310969Z         "int": {
2026-06-04T13:05:23.0312112Z           "complete": false,
2026-06-04T13:05:23.0313468Z           "evidence": []
2026-06-04T13:05:23.0314686Z         },
2026-06-04T13:05:23.0315706Z         "unit": {
2026-06-04T13:05:23.0316866Z           "complete": true,
2026-06-04T13:05:23.0318195Z           "evidence": [
2026-06-04T13:05:23.0319465Z             {
2026-06-04T13:05:23.0320772Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T13:05:23.0322460Z               "line": 43
2026-06-04T13:05:23.0323717Z             },
2026-06-04T13:05:23.0324815Z             {
2026-06-04T13:05:23.0326103Z               "path": "crates/spt-store/src/seed.rs",
2026-06-04T13:05:23.0327751Z               "line": 59
2026-06-04T13:05:23.0328983Z             }
2026-06-04T13:05:23.0330285Z           ]
2026-06-04T13:05:23.0331322Z         }
2026-06-04T13:05:23.0332360Z       }
2026-06-04T13:05:23.0333403Z     },
2026-06-04T13:05:23.0334358Z     {
2026-06-04T13:05:23.0335362Z       "id": "REQ-START-2",
2026-06-04T13:05:23.0336995Z       "title": "Harness-hosted startup: api seed then listen",
2026-06-04T13:05:23.0338840Z       "requiredStages": [
2026-06-04T13:05:23.0340202Z         "impl",
2026-06-04T13:05:23.0341249Z         "unit",
2026-06-04T13:05:23.0342300Z         "int"
2026-06-04T13:05:23.0343322Z       ],
2026-06-04T13:05:23.0344315Z       "stages": {
2026-06-04T13:05:23.0345403Z         "doc": {
2026-06-04T13:05:23.0346548Z           "complete": false,
2026-06-04T13:05:23.0347870Z           "evidence": []
2026-06-04T13:05:23.0349080Z         },
2026-06-04T13:05:23.0350186Z         "impl": {
2026-06-04T13:05:23.0358950Z           "complete": true,
2026-06-04T13:05:23.0360532Z           "evidence": [
2026-06-04T13:05:23.0361662Z             {
2026-06-04T13:05:23.0363098Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:23.0364920Z               "line": 16
2026-06-04T13:05:23.0366891Z             },
2026-06-04T13:05:23.0367982Z             {
2026-06-04T13:05:23.0369375Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:23.0371453Z               "line": 94
2026-06-04T13:05:23.0372673Z             },
2026-06-04T13:05:23.0373720Z             {
2026-06-04T13:05:23.0374972Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:23.0376613Z               "line": 163
2026-06-04T13:05:23.0377833Z             }
2026-06-04T13:05:23.0378866Z           ]
2026-06-04T13:05:23.0380017Z         },
2026-06-04T13:05:23.0380968Z         "int": {
2026-06-04T13:05:23.0382023Z           "complete": true,
2026-06-04T13:05:23.0383217Z           "evidence": [
2026-06-04T13:05:23.0384313Z             {
2026-06-04T13:05:23.0385510Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T13:05:23.0387059Z               "line": 150
2026-06-04T13:05:23.0388183Z             }
2026-06-04T13:05:23.0389146Z           ]
2026-06-04T13:05:23.0390283Z         },
2026-06-04T13:05:23.0391295Z         "unit": {
2026-06-04T13:05:23.0392383Z           "complete": true,
2026-06-04T13:05:23.0393628Z           "evidence": [
2026-06-04T13:05:23.0394769Z             {
2026-06-04T13:05:23.0395979Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:23.0397536Z               "line": 363
2026-06-04T13:05:23.0398684Z             },
2026-06-04T13:05:23.0399907Z             {
2026-06-04T13:05:23.0401069Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:23.0402585Z               "line": 396
2026-06-04T13:05:23.0403711Z             }
2026-06-04T13:05:23.0404674Z           ]
2026-06-04T13:05:23.0405614Z         }
2026-06-04T13:05:23.0406542Z       }
2026-06-04T13:05:23.0407448Z     },
2026-06-04T13:05:23.0408360Z     {
2026-06-04T13:05:23.0409352Z       "id": "REQ-START-3",
2026-06-04T13:05:23.0411429Z       "title": "spt-hosted startup: spawn-session then api bind (no file)",
2026-06-04T13:05:23.0413366Z       "requiredStages": [
2026-06-04T13:05:23.0414547Z         "impl",
2026-06-04T13:05:23.0415550Z         "unit",
2026-06-04T13:05:23.0416555Z         "int"
2026-06-04T13:05:23.0417525Z       ],
2026-06-04T13:05:23.0418482Z       "stages": {
2026-06-04T13:05:23.0419865Z         "doc": {
2026-06-04T13:05:23.0420930Z           "complete": false,
2026-06-04T13:05:23.0422150Z           "evidence": []
2026-06-04T13:05:23.0423262Z         },
2026-06-04T13:05:23.0424236Z         "impl": {
2026-06-04T13:05:23.0425299Z           "complete": true,
2026-06-04T13:05:23.0426488Z           "evidence": [
2026-06-04T13:05:23.0427578Z             {
2026-06-04T13:05:23.0428786Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T13:05:23.0430775Z               "line": 23
2026-06-04T13:05:23.0431890Z             },
2026-06-04T13:05:23.0432879Z             {
2026-06-04T13:05:23.0434077Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T13:05:23.0435639Z               "line": 167
2026-06-04T13:05:23.0436755Z             },
2026-06-04T13:05:23.0437753Z             {
2026-06-04T13:05:23.0438958Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T13:05:23.0440889Z               "line": 180
2026-06-04T13:05:23.0442027Z             },
2026-06-04T13:05:23.0443017Z             {
2026-06-04T13:05:23.0444183Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:23.0445706Z               "line": 17
2026-06-04T13:05:23.0446817Z             },
2026-06-04T13:05:23.0447788Z             {
2026-06-04T13:05:23.0448952Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:23.0450737Z               "line": 43
2026-06-04T13:05:23.0451888Z             },
2026-06-04T13:05:23.0452908Z             {
2026-06-04T13:05:23.0454131Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:23.0455699Z               "line": 95
2026-06-04T13:05:23.0464236Z             }
2026-06-04T13:05:23.0465403Z           ]
2026-06-04T13:05:23.0466361Z         },
2026-06-04T13:05:23.0467303Z         "int": {
2026-06-04T13:05:23.0468813Z           "complete": true,
2026-06-04T13:05:23.0470421Z           "evidence": [
2026-06-04T13:05:23.0471503Z             {
2026-06-04T13:05:23.0472897Z               "path": "crates/spt/tests/contract_e2e.rs",
2026-06-04T13:05:23.0474445Z               "line": 321
2026-06-04T13:05:23.0475558Z             }
2026-06-04T13:05:23.0476522Z           ]
2026-06-04T13:05:23.0477462Z         },
2026-06-04T13:05:23.0478401Z         "unit": {
2026-06-04T13:05:23.0479681Z           "complete": true,
2026-06-04T13:05:23.0481034Z           "evidence": [
2026-06-04T13:05:23.0482113Z             {
2026-06-04T13:05:23.0483314Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T13:05:23.0484870Z               "line": 245
2026-06-04T13:05:23.0485982Z             },
2026-06-04T13:05:23.0486957Z             {
2026-06-04T13:05:23.0487606Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T13:05:23.0488060Z               "line": 263
2026-06-04T13:05:23.0488483Z             },
2026-06-04T13:05:23.0488912Z             {
2026-06-04T13:05:23.0489821Z               "path": "crates/spt-daemon/src/seedmap.rs",
2026-06-04T13:05:23.0490480Z               "line": 273
2026-06-04T13:05:23.0490908Z             },
2026-06-04T13:05:23.0491325Z             {
2026-06-04T13:05:23.0491943Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:23.0492396Z               "line": 364
2026-06-04T13:05:23.0492810Z             },
2026-06-04T13:05:23.0493224Z             {
2026-06-04T13:05:23.0493833Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:23.0494289Z               "line": 397
2026-06-04T13:05:23.0494701Z             },
2026-06-04T13:05:23.0495122Z             {
2026-06-04T13:05:23.0495732Z               "path": "crates/spt/src/api/startup.rs",
2026-06-04T13:05:23.0496170Z               "line": 405
2026-06-04T13:05:23.0496586Z             }
2026-06-04T13:05:23.0496998Z           ]
2026-06-04T13:05:23.0497419Z         }
2026-06-04T13:05:23.0497832Z       }
2026-06-04T13:05:23.0498257Z     },
2026-06-04T13:05:23.0498673Z     {
2026-06-04T13:05:23.0499127Z       "id": "REQ-START-4",
2026-06-04T13:05:23.0500298Z       "title": "Adapter-injected env aliases (SPT/OWL/LIVE)",
2026-06-04T13:05:23.0500775Z       "requiredStages": [
2026-06-04T13:05:23.0501207Z         "impl",
2026-06-04T13:05:23.0501623Z         "unit"
2026-06-04T13:05:23.0502042Z       ],
2026-06-04T13:05:23.0502475Z       "stages": {
2026-06-04T13:05:23.0502892Z         "doc": {
2026-06-04T13:05:23.0503372Z           "complete": false,
2026-06-04T13:05:23.0503825Z           "evidence": []
2026-06-04T13:05:23.0504246Z         },
2026-06-04T13:05:23.0504670Z         "impl": {
2026-06-04T13:05:23.0505143Z           "complete": true,
2026-06-04T13:05:23.0505599Z           "evidence": [
2026-06-04T13:05:23.0506013Z             {
2026-06-04T13:05:23.0506661Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:23.0507107Z               "line": 249
2026-06-04T13:05:23.0507532Z             }
2026-06-04T13:05:23.0507952Z           ]
2026-06-04T13:05:23.0508379Z         },
2026-06-04T13:05:23.0508806Z         "int": {
2026-06-04T13:05:23.0509332Z           "complete": false,
2026-06-04T13:05:23.0510189Z           "evidence": []
2026-06-04T13:05:23.0510604Z         },
2026-06-04T13:05:23.0511040Z         "unit": {
2026-06-04T13:05:23.0511500Z           "complete": true,
2026-06-04T13:05:23.0511955Z           "evidence": [
2026-06-04T13:05:23.0512376Z             {
2026-06-04T13:05:23.0513018Z               "path": "crates/spt/src/api/reporting.rs",
2026-06-04T13:05:23.0513483Z               "line": 442
2026-06-04T13:05:23.0513901Z             }
2026-06-04T13:05:23.0514318Z           ]
2026-06-04T13:05:23.0514731Z         }
2026-06-04T13:05:23.0515155Z       }
2026-06-04T13:05:23.0515571Z     },
2026-06-04T13:05:23.0515974Z     {
2026-06-04T13:05:23.0516443Z       "id": "REQ-STORE-1",
2026-06-04T13:05:23.0522824Z       "title": "spt-store::BranchStore (git branch as versioned KV; commit=checkpoint/tip=resume, atomic multi-key, merge-native sync) is the substrate for coarse/durable/audited state (context, registry snapshot+distribution, daemon checkpoint); hot paths (B5 fsync journal) + indexed queries (SQLite spool) excluded (ADR-0011)",
2026-06-04T13:05:23.0523685Z       "requiredStages": [
2026-06-04T13:05:23.0524118Z         "impl",
2026-06-04T13:05:23.0524545Z         "unit"
2026-06-04T13:05:23.0524965Z       ],
2026-06-04T13:05:23.0525402Z       "stages": {
2026-06-04T13:05:23.0525831Z         "doc": {
2026-06-04T13:05:23.0526317Z           "complete": false,
2026-06-04T13:05:23.0526769Z           "evidence": []
2026-06-04T13:05:23.0527188Z         },
2026-06-04T13:05:23.0527619Z         "impl": {
2026-06-04T13:05:23.0528093Z           "complete": true,
2026-06-04T13:05:23.0528536Z           "evidence": [
2026-06-04T13:05:23.0528961Z             {
2026-06-04T13:05:23.0529881Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0530506Z               "line": 23
2026-06-04T13:05:23.0530956Z             },
2026-06-04T13:05:23.0531377Z             {
2026-06-04T13:05:23.0532074Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0532530Z               "line": 46
2026-06-04T13:05:23.0532956Z             },
2026-06-04T13:05:23.0533372Z             {
2026-06-04T13:05:23.0534051Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0534497Z               "line": 88
2026-06-04T13:05:23.0534912Z             },
2026-06-04T13:05:23.0535333Z             {
2026-06-04T13:05:23.0536008Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0536465Z               "line": 109
2026-06-04T13:05:23.0536888Z             },
2026-06-04T13:05:23.0537300Z             {
2026-06-04T13:05:23.0537984Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0538430Z               "line": 152
2026-06-04T13:05:23.0538859Z             },
2026-06-04T13:05:23.0539442Z             {
2026-06-04T13:05:23.0540181Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0540678Z               "line": 165
2026-06-04T13:05:23.0541274Z             },
2026-06-04T13:05:23.0541698Z             {
2026-06-04T13:05:23.0542380Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0542932Z               "line": 353
2026-06-04T13:05:23.0543346Z             },
2026-06-04T13:05:23.0543769Z             {
2026-06-04T13:05:23.0544476Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:23.0544924Z               "line": 25
2026-06-04T13:05:23.0545347Z             },
2026-06-04T13:05:23.0545763Z             {
2026-06-04T13:05:23.0546467Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:23.0546913Z               "line": 92
2026-06-04T13:05:23.0547339Z             },
2026-06-04T13:05:23.0547763Z             {
2026-06-04T13:05:23.0548456Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:23.0548915Z               "line": 117
2026-06-04T13:05:23.0549677Z             },
2026-06-04T13:05:23.0550105Z             {
2026-06-04T13:05:23.0550794Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:23.0551268Z               "line": 131
2026-06-04T13:05:23.0551693Z             },
2026-06-04T13:05:23.0552106Z             {
2026-06-04T13:05:23.0552866Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:23.0553313Z               "line": 145
2026-06-04T13:05:23.0553737Z             },
2026-06-04T13:05:23.0554162Z             {
2026-06-04T13:05:23.0554852Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:23.0562221Z               "line": 154
2026-06-04T13:05:23.0562757Z             },
2026-06-04T13:05:23.0563287Z             {
2026-06-04T13:05:23.0563954Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T13:05:23.0564406Z               "line": 16
2026-06-04T13:05:23.0564831Z             },
2026-06-04T13:05:23.0565530Z             {
2026-06-04T13:05:23.0566191Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T13:05:23.0566635Z               "line": 63
2026-06-04T13:05:23.0567372Z             }
2026-06-04T13:05:23.0567825Z           ]
2026-06-04T13:05:23.0568300Z         },
2026-06-04T13:05:23.0568773Z         "int": {
2026-06-04T13:05:23.0569370Z           "complete": false,
2026-06-04T13:05:23.0569904Z           "evidence": []
2026-06-04T13:05:23.0570678Z         },
2026-06-04T13:05:23.0571166Z         "unit": {
2026-06-04T13:05:23.0571842Z           "complete": true,
2026-06-04T13:05:23.0572296Z           "evidence": [
2026-06-04T13:05:23.0572716Z             {
2026-06-04T13:05:23.0573431Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0573892Z               "line": 391
2026-06-04T13:05:23.0574312Z             },
2026-06-04T13:05:23.0574817Z             {
2026-06-04T13:05:23.0575502Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0575985Z               "line": 401
2026-06-04T13:05:23.0576412Z             },
2026-06-04T13:05:23.0576820Z             {
2026-06-04T13:05:23.0577523Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0577970Z               "line": 421
2026-06-04T13:05:23.0578389Z             },
2026-06-04T13:05:23.0578800Z             {
2026-06-04T13:05:23.0579739Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0580380Z               "line": 437
2026-06-04T13:05:23.0580959Z             },
2026-06-04T13:05:23.0581541Z             {
2026-06-04T13:05:23.0582220Z               "path": "crates/spt-store/src/branchstore.rs",
2026-06-04T13:05:23.0582680Z               "line": 458
2026-06-04T13:05:23.0583099Z             },
2026-06-04T13:05:23.0583527Z             {
2026-06-04T13:05:23.0584229Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:23.0584677Z               "line": 312
2026-06-04T13:05:23.0585100Z             },
2026-06-04T13:05:23.0585528Z             {
2026-06-04T13:05:23.0586230Z               "path": "crates/spt-store/src/contextstore.rs",
2026-06-04T13:05:23.0586684Z               "line": 342
2026-06-04T13:05:23.0587127Z             },
2026-06-04T13:05:23.0587550Z             {
2026-06-04T13:05:23.0588188Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T13:05:23.0588643Z               "line": 116
2026-06-04T13:05:23.0589061Z             },
2026-06-04T13:05:23.0589524Z             {
2026-06-04T13:05:23.0590165Z               "path": "crates/spt-store/src/project.rs",
2026-06-04T13:05:23.0590619Z               "line": 124
2026-06-04T13:05:23.0591044Z             }
2026-06-04T13:05:23.0591455Z           ]
2026-06-04T13:05:23.0591868Z         }
2026-06-04T13:05:23.0592276Z       }
2026-06-04T13:05:23.0592693Z     },
2026-06-04T13:05:23.0593098Z     {
2026-06-04T13:05:23.0593566Z       "id": "REQ-TERM-1",
2026-06-04T13:05:23.0594561Z       "title": "Process-supervisor terminal wrapper hosting broker PTYs",
2026-06-04T13:05:23.0595041Z       "requiredStages": [
2026-06-04T13:05:23.0595468Z         "impl",
2026-06-04T13:05:23.0595885Z         "unit"
2026-06-04T13:05:23.0596312Z       ],
2026-06-04T13:05:23.0596739Z       "stages": {
2026-06-04T13:05:23.0597168Z         "doc": {
2026-06-04T13:05:23.0597640Z           "complete": false,
2026-06-04T13:05:23.0598092Z           "evidence": []
2026-06-04T13:05:23.0598507Z         },
2026-06-04T13:05:23.0598937Z         "impl": {
2026-06-04T13:05:23.0599448Z           "complete": true,
2026-06-04T13:05:23.0599901Z           "evidence": [
2026-06-04T13:05:23.0600339Z             {
2026-06-04T13:05:23.0600956Z               "path": "crates/spt-term/src/pty.rs",
2026-06-04T13:05:23.0601403Z               "line": 61
2026-06-04T13:05:23.0601833Z             },
2026-06-04T13:05:23.0602243Z             {
2026-06-04T13:05:23.0602835Z               "path": "crates/spt-term/src/pty.rs",
2026-06-04T13:05:23.0603282Z               "line": 169
2026-06-04T13:05:23.0603716Z             },
2026-06-04T13:05:23.0604370Z             {
2026-06-04T13:05:23.0604991Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T13:05:23.0605576Z               "line": 95
2026-06-04T13:05:23.0606000Z             }
2026-06-04T13:05:23.0606429Z           ]
2026-06-04T13:05:23.0606847Z         },
2026-06-04T13:05:23.0607264Z         "int": {
2026-06-04T13:05:23.0607743Z           "complete": false,
2026-06-04T13:05:23.0608195Z           "evidence": []
2026-06-04T13:05:23.0608618Z         },
2026-06-04T13:05:23.0609037Z         "unit": {
2026-06-04T13:05:23.0609587Z           "complete": true,
2026-06-04T13:05:23.0610045Z           "evidence": [
2026-06-04T13:05:23.0610476Z             {
2026-06-04T13:05:23.0611135Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-04T13:05:23.0611577Z               "line": 28
2026-06-04T13:05:23.0611999Z             },
2026-06-04T13:05:23.0612407Z             {
2026-06-04T13:05:23.0613069Z               "path": "crates/spt-term/tests/surface.rs",
2026-06-04T13:05:23.0613533Z               "line": 60
2026-06-04T13:05:23.0613949Z             }
2026-06-04T13:05:23.0614367Z           ]
2026-06-04T13:05:23.0614784Z         }
2026-06-04T13:05:23.0615200Z       }
2026-06-04T13:05:23.0615604Z     },
2026-06-04T13:05:23.0616018Z     {
2026-06-04T13:05:23.0616471Z       "id": "REQ-TERM-2",
2026-06-04T13:05:23.0617537Z       "title": "session-surface abstraction; send-keys + send-line injection",
2026-06-04T13:05:23.0618026Z       "requiredStages": [
2026-06-04T13:05:23.0618444Z         "impl",
2026-06-04T13:05:23.0618864Z         "unit"
2026-06-04T13:05:23.0619309Z       ],
2026-06-04T13:05:23.0619749Z       "stages": {
2026-06-04T13:05:23.0620172Z         "doc": {
2026-06-04T13:05:23.0620655Z           "complete": false,
2026-06-04T13:05:23.0621116Z           "evidence": []
2026-06-04T13:05:23.0621532Z         },
2026-06-04T13:05:23.0621965Z         "impl": {
2026-06-04T13:05:23.0622423Z           "complete": true,
2026-06-04T13:05:23.0622877Z           "evidence": [
2026-06-04T13:05:23.0623303Z             {
2026-06-04T13:05:23.0623930Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T13:05:23.0624394Z               "line": 112
2026-06-04T13:05:23.0624810Z             },
2026-06-04T13:05:23.0625228Z             {
2026-06-04T13:05:23.0625852Z               "path": "crates/spt-term/src/surface.rs",
2026-06-04T13:05:23.0626306Z               "line": 122
2026-06-04T13:05:23.0626735Z             }
2026-06-04T13:05:23.0627149Z           ]
2026-06-04T13:05:23.0627569Z         },
2026-06-04T13:05:23.0627988Z         "int": {
2026-06-04T13:05:23.0628466Z           "complete": false,
2026-06-04T13:05:23.0628917Z           "evidence": []
2026-06-04T13:05:23.0629373Z         },
2026-06-04T13:05:23.0629804Z         "unit": {
2026-06-04T13:05:23.0630283Z           "complete": true,
2026-06-04T13:05:23.0630742Z           "evidence": [
2026-06-04T13:05:23.0631155Z             {
2026-06-04T13:05:23.0631797Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-04T13:05:23.0632253Z               "line": 46
2026-06-04T13:05:23.0632678Z             },
2026-06-04T13:05:23.0633099Z             {
2026-06-04T13:05:23.0633749Z               "path": "crates/spt-term/tests/inject.rs",
2026-06-04T13:05:23.0634204Z               "line": 71
2026-06-04T13:05:23.0634619Z             }
2026-06-04T13:05:23.0635039Z           ]
2026-06-04T13:05:23.0635454Z         }
2026-06-04T13:05:23.0635873Z       }
2026-06-04T13:05:23.0636277Z     },
2026-06-04T13:05:23.0636697Z     {
2026-06-04T13:05:23.0637171Z       "id": "REQ-TERM-3",
2026-06-04T13:05:23.0637947Z       "title": "Byte-stream remote terminal streaming for v1",
2026-06-04T13:05:23.0638439Z       "requiredStages": [
2026-06-04T13:05:23.0638873Z         "impl",
2026-06-04T13:05:23.0639343Z         "unit"
2026-06-04T13:05:23.0639755Z       ],
2026-06-04T13:05:23.0640199Z       "stages": {
2026-06-04T13:05:23.0640628Z         "doc": {
2026-06-04T13:05:23.0641099Z           "complete": false,
2026-06-04T13:05:23.0641742Z           "evidence": []
2026-06-04T13:05:23.0648083Z         },
2026-06-04T13:05:23.0648652Z         "impl": {
2026-06-04T13:05:23.0649128Z           "complete": true,
2026-06-04T13:05:23.0649942Z           "evidence": [
2026-06-04T13:05:23.0650378Z             {
2026-06-04T13:05:23.0651002Z               "path": "crates/spt-term/src/stream.rs",
2026-06-04T13:05:23.0651450Z               "line": 71
2026-06-04T13:05:23.0651867Z             }
2026-06-04T13:05:23.0652286Z           ]
2026-06-04T13:05:23.0652706Z         },
2026-06-04T13:05:23.0653138Z         "int": {
2026-06-04T13:05:23.0653609Z           "complete": false,
2026-06-04T13:05:23.0654063Z           "evidence": []
2026-06-04T13:05:23.0654482Z         },
2026-06-04T13:05:23.0654909Z         "unit": {
2026-06-04T13:05:23.0655380Z           "complete": true,
2026-06-04T13:05:23.0655821Z           "evidence": [
2026-06-04T13:05:23.0656251Z             {
2026-06-04T13:05:23.0656894Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-04T13:05:23.0657351Z               "line": 37
2026-06-04T13:05:23.0657773Z             },
2026-06-04T13:05:23.0658195Z             {
2026-06-04T13:05:23.0659011Z               "path": "crates/spt-term/tests/stream.rs",
2026-06-04T13:05:23.0659559Z               "line": 67
2026-06-04T13:05:23.0660058Z             }
2026-06-04T13:05:23.0660828Z           ]
2026-06-04T13:05:23.0661304Z         }
2026-06-04T13:05:23.0661788Z       }
2026-06-04T13:05:23.0662376Z     },
2026-06-04T13:05:23.0662794Z     {
2026-06-04T13:05:23.0663268Z       "id": "REQ-TERM-4",
2026-06-04T13:05:23.0665611Z       "title": "Live activity buffer (PTY digest): adapter-supplied patterns over broker PTY, spt digest pull + delta-stream, opt-in Path-B log",
2026-06-04T13:05:23.0666101Z       "requiredStages": [
2026-06-04T13:05:23.0666527Z         "impl",
2026-06-04T13:05:23.0666953Z         "unit",
2026-06-04T13:05:23.0667371Z         "int"
2026-06-04T13:05:23.0667790Z       ],
2026-06-04T13:05:23.0668227Z       "stages": {
2026-06-04T13:05:23.0668693Z         "doc": {
2026-06-04T13:05:23.0669212Z           "complete": true,
2026-06-04T13:05:23.0669828Z           "evidence": [
2026-06-04T13:05:23.0670286Z             {
2026-06-04T13:05:23.0670822Z               "path": "docs/MANIFEST.md",
2026-06-04T13:05:23.0671293Z               "line": 115
2026-06-04T13:05:23.0671733Z             }
2026-06-04T13:05:23.0672173Z           ]
2026-06-04T13:05:23.0672610Z         },
2026-06-04T13:05:23.0673053Z         "impl": {
2026-06-04T13:05:23.0673534Z           "complete": true,
2026-06-04T13:05:23.0673995Z           "evidence": [
2026-06-04T13:05:23.0674441Z             {
2026-06-04T13:05:23.0675088Z               "path": "crates/spt-daemon/src/brain.rs",
2026-06-04T13:05:23.0675568Z               "line": 463
2026-06-04T13:05:23.0676005Z             },
2026-06-04T13:05:23.0676434Z             {
2026-06-04T13:05:23.0677109Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0677577Z               "line": 41
2026-06-04T13:05:23.0678036Z             },
2026-06-04T13:05:23.0678473Z             {
2026-06-04T13:05:23.0679141Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0679812Z               "line": 91
2026-06-04T13:05:23.0680467Z             },
2026-06-04T13:05:23.0680988Z             {
2026-06-04T13:05:23.0681736Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0682271Z               "line": 152
2026-06-04T13:05:23.0682759Z             },
2026-06-04T13:05:23.0683221Z             {
2026-06-04T13:05:23.0683936Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0684417Z               "line": 212
2026-06-04T13:05:23.0684868Z             },
2026-06-04T13:05:23.0685316Z             {
2026-06-04T13:05:23.0686031Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T13:05:23.0686507Z               "line": 20
2026-06-04T13:05:23.0686941Z             },
2026-06-04T13:05:23.0687385Z             {
2026-06-04T13:05:23.0688084Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T13:05:23.0688953Z               "line": 212
2026-06-04T13:05:23.0689475Z             },
2026-06-04T13:05:23.0690097Z             {
2026-06-04T13:05:23.0691257Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T13:05:23.0691708Z               "line": 226
2026-06-04T13:05:23.0692142Z             },
2026-06-04T13:05:23.0692555Z             {
2026-06-04T13:05:23.0693228Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:23.0693823Z               "line": 585
2026-06-04T13:05:23.0694276Z             },
2026-06-04T13:05:23.0694710Z             {
2026-06-04T13:05:23.0695341Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T13:05:23.0695811Z               "line": 157
2026-06-04T13:05:23.0696239Z             },
2026-06-04T13:05:23.0696681Z             {
2026-06-04T13:05:23.0697320Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T13:05:23.0697801Z               "line": 199
2026-06-04T13:05:23.0698262Z             },
2026-06-04T13:05:23.0698693Z             {
2026-06-04T13:05:23.0699529Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T13:05:23.0699997Z               "line": 226
2026-06-04T13:05:23.0700422Z             },
2026-06-04T13:05:23.0700835Z             {
2026-06-04T13:05:23.0701392Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:23.0701852Z               "line": 272
2026-06-04T13:05:23.0702263Z             }
2026-06-04T13:05:23.0702693Z           ]
2026-06-04T13:05:23.0703103Z         },
2026-06-04T13:05:23.0703532Z         "int": {
2026-06-04T13:05:23.0703994Z           "complete": true,
2026-06-04T13:05:23.0704456Z           "evidence": [
2026-06-04T13:05:23.0704881Z             {
2026-06-04T13:05:23.0705541Z               "path": "crates/spt-daemon/tests/digest.rs",
2026-06-04T13:05:23.0706000Z               "line": 18
2026-06-04T13:05:23.0706413Z             }
2026-06-04T13:05:23.0706838Z           ]
2026-06-04T13:05:23.0707248Z         },
2026-06-04T13:05:23.0707695Z         "unit": {
2026-06-04T13:05:23.0708168Z           "complete": true,
2026-06-04T13:05:23.0708617Z           "evidence": [
2026-06-04T13:05:23.0709055Z             {
2026-06-04T13:05:23.0710033Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0710500Z               "line": 250
2026-06-04T13:05:23.0710915Z             },
2026-06-04T13:05:23.0711349Z             {
2026-06-04T13:05:23.0712000Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0712456Z               "line": 263
2026-06-04T13:05:23.0712881Z             },
2026-06-04T13:05:23.0713299Z             {
2026-06-04T13:05:23.0713945Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0714402Z               "line": 275
2026-06-04T13:05:23.0714823Z             },
2026-06-04T13:05:23.0715241Z             {
2026-06-04T13:05:23.0715879Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0716341Z               "line": 290
2026-06-04T13:05:23.0716774Z             },
2026-06-04T13:05:23.0717201Z             {
2026-06-04T13:05:23.0717854Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0718313Z               "line": 305
2026-06-04T13:05:23.0718747Z             },
2026-06-04T13:05:23.0719197Z             {
2026-06-04T13:05:23.0719851Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0720304Z               "line": 327
2026-06-04T13:05:23.0720739Z             },
2026-06-04T13:05:23.0721163Z             {
2026-06-04T13:05:23.0721805Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0722264Z               "line": 337
2026-06-04T13:05:23.0722679Z             },
2026-06-04T13:05:23.0723111Z             {
2026-06-04T13:05:23.0723744Z               "path": "crates/spt-daemon/src/digest.rs",
2026-06-04T13:05:23.0724204Z               "line": 364
2026-06-04T13:05:23.0724631Z             },
2026-06-04T13:05:23.0725063Z             {
2026-06-04T13:05:23.0725764Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T13:05:23.0726420Z               "line": 338
2026-06-04T13:05:23.0726850Z             },
2026-06-04T13:05:23.0727392Z             {
2026-06-04T13:05:23.0728071Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T13:05:23.0728534Z               "line": 350
2026-06-04T13:05:23.0728958Z             },
2026-06-04T13:05:23.0729429Z             {
2026-06-04T13:05:23.0730096Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T13:05:23.0730558Z               "line": 367
2026-06-04T13:05:23.0730982Z             },
2026-06-04T13:05:23.0731411Z             {
2026-06-04T13:05:23.0732081Z               "path": "crates/spt-daemon/src/digesthub.rs",
2026-06-04T13:05:23.0738891Z               "line": 378
2026-06-04T13:05:23.0739558Z             },
2026-06-04T13:05:23.0739982Z             {
2026-06-04T13:05:23.0740679Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:23.0741131Z               "line": 770
2026-06-04T13:05:23.0741601Z             },
2026-06-04T13:05:23.0742017Z             {
2026-06-04T13:05:23.0742678Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:23.0743147Z               "line": 777
2026-06-04T13:05:23.0743559Z             },
2026-06-04T13:05:23.0743982Z             {
2026-06-04T13:05:23.0744642Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:23.0745101Z               "line": 792
2026-06-04T13:05:23.0745529Z             },
2026-06-04T13:05:23.0745940Z             {
2026-06-04T13:05:23.0746554Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T13:05:23.0746999Z               "line": 381
2026-06-04T13:05:23.0747423Z             },
2026-06-04T13:05:23.0747847Z             {
2026-06-04T13:05:23.0748452Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T13:05:23.0748941Z               "line": 402
2026-06-04T13:05:23.0749407Z             },
2026-06-04T13:05:23.0749836Z             {
2026-06-04T13:05:23.0750449Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T13:05:23.0750902Z               "line": 415
2026-06-04T13:05:23.0751327Z             },
2026-06-04T13:05:23.0751748Z             {
2026-06-04T13:05:23.0752373Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T13:05:23.0752822Z               "line": 434
2026-06-04T13:05:23.0753241Z             },
2026-06-04T13:05:23.0753652Z             {
2026-06-04T13:05:23.0754268Z               "path": "crates/spt-term/src/digest.rs",
2026-06-04T13:05:23.0754717Z               "line": 461
2026-06-04T13:05:23.0755128Z             },
2026-06-04T13:05:23.0755549Z             {
2026-06-04T13:05:23.0756178Z               "path": "crates/spt-term/tests/digest.rs",
2026-06-04T13:05:23.0756635Z               "line": 32
2026-06-04T13:05:23.0757051Z             },
2026-06-04T13:05:23.0757478Z             {
2026-06-04T13:05:23.0758031Z               "path": "crates/spt/src/cli.rs",
2026-06-04T13:05:23.0758479Z               "line": 1200
2026-06-04T13:05:23.0758912Z             }
2026-06-04T13:05:23.0759359Z           ]
2026-06-04T13:05:23.0759780Z         }
2026-06-04T13:05:23.0760189Z       }
2026-06-04T13:05:23.0760615Z     },
2026-06-04T13:05:23.0761030Z     {
2026-06-04T13:05:23.0761478Z       "id": "REQ-UPD-1",
2026-06-04T13:05:23.0762107Z       "title": "Peer-propagated update over P2P",
2026-06-04T13:05:23.0762580Z       "requiredStages": [
2026-06-04T13:05:23.0763013Z         "impl",
2026-06-04T13:05:23.0763427Z         "unit"
2026-06-04T13:05:23.0763843Z       ],
2026-06-04T13:05:23.0764277Z       "stages": {
2026-06-04T13:05:23.0764695Z         "doc": {
2026-06-04T13:05:23.0765168Z           "complete": false,
2026-06-04T13:05:23.0765614Z           "evidence": []
2026-06-04T13:05:23.0766032Z         },
2026-06-04T13:05:23.0766460Z         "impl": {
2026-06-04T13:05:23.0766935Z           "complete": true,
2026-06-04T13:05:23.0767390Z           "evidence": [
2026-06-04T13:05:23.0767801Z             {
2026-06-04T13:05:23.0768484Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T13:05:23.0769233Z               "line": 28
2026-06-04T13:05:23.0769663Z             },
2026-06-04T13:05:23.0770204Z             {
2026-06-04T13:05:23.0770889Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T13:05:23.0771339Z               "line": 74
2026-06-04T13:05:23.0771751Z             },
2026-06-04T13:05:23.0772172Z             {
2026-06-04T13:05:23.0772843Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T13:05:23.0773299Z               "line": 209
2026-06-04T13:05:23.0773710Z             },
2026-06-04T13:05:23.0774128Z             {
2026-06-04T13:05:23.0774789Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T13:05:23.0775230Z               "line": 22
2026-06-04T13:05:23.0775656Z             },
2026-06-04T13:05:23.0776070Z             {
2026-06-04T13:05:23.0776734Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T13:05:23.0777173Z               "line": 67
2026-06-04T13:05:23.0777612Z             },
2026-06-04T13:05:23.0778031Z             {
2026-06-04T13:05:23.0778687Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T13:05:23.0779145Z               "line": 80
2026-06-04T13:05:23.0779597Z             },
2026-06-04T13:05:23.0780031Z             {
2026-06-04T13:05:23.0780679Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T13:05:23.0781139Z               "line": 101
2026-06-04T13:05:23.0781559Z             },
2026-06-04T13:05:23.0781973Z             {
2026-06-04T13:05:23.0782620Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T13:05:23.0783060Z               "line": 37
2026-06-04T13:05:23.0783483Z             }
2026-06-04T13:05:23.0783896Z           ]
2026-06-04T13:05:23.0784323Z         },
2026-06-04T13:05:23.0784751Z         "int": {
2026-06-04T13:05:23.0785213Z           "complete": true,
2026-06-04T13:05:23.0785664Z           "evidence": [
2026-06-04T13:05:23.0786074Z             {
2026-06-04T13:05:23.0786778Z               "path": "crates/spt-daemon/tests/dispatch.rs",
2026-06-04T13:05:23.0787227Z               "line": 190
2026-06-04T13:05:23.0787662Z             }
2026-06-04T13:05:23.0788079Z           ]
2026-06-04T13:05:23.0788487Z         },
2026-06-04T13:05:23.0788922Z         "unit": {
2026-06-04T13:05:23.0789422Z           "complete": true,
2026-06-04T13:05:23.0789883Z           "evidence": [
2026-06-04T13:05:23.0790302Z             {
2026-06-04T13:05:23.0790963Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T13:05:23.0791415Z               "line": 120
2026-06-04T13:05:23.0791826Z             },
2026-06-04T13:05:23.0792244Z             {
2026-06-04T13:05:23.0792891Z               "path": "crates/spt-daemon/src/relcache.rs",
2026-06-04T13:05:23.0793344Z               "line": 137
2026-06-04T13:05:23.0793753Z             },
2026-06-04T13:05:23.0794172Z             {
2026-06-04T13:05:23.0794879Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T13:05:23.0795344Z               "line": 201
2026-06-04T13:05:23.0795763Z             },
2026-06-04T13:05:23.0796176Z             {
2026-06-04T13:05:23.0796819Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T13:05:23.0797281Z               "line": 92
2026-06-04T13:05:23.0797695Z             },
2026-06-04T13:05:23.0798111Z             {
2026-06-04T13:05:23.0798743Z               "path": "crates/spt-net/src/net/update.rs",
2026-06-04T13:05:23.0799233Z               "line": 128
2026-06-04T13:05:23.0799646Z             }
2026-06-04T13:05:23.0800070Z           ]
2026-06-04T13:05:23.0800491Z         }
2026-06-04T13:05:23.0800900Z       }
2026-06-04T13:05:23.0801316Z     },
2026-06-04T13:05:23.0801720Z     {
2026-06-04T13:05:23.0802183Z       "id": "REQ-UPD-2",
2026-06-04T13:05:23.0802989Z       "title": "All binaries signature-verified before handoff",
2026-06-04T13:05:23.0803474Z       "requiredStages": [
2026-06-04T13:05:23.0803909Z         "impl",
2026-06-04T13:05:23.0804326Z         "unit"
2026-06-04T13:05:23.0804919Z       ],
2026-06-04T13:05:23.0805350Z       "stages": {
2026-06-04T13:05:23.0805780Z         "doc": {
2026-06-04T13:05:23.0806247Z           "complete": false,
2026-06-04T13:05:23.0806832Z           "evidence": []
2026-06-04T13:05:23.0807256Z         },
2026-06-04T13:05:23.0807682Z         "impl": {
2026-06-04T13:05:23.0808153Z           "complete": true,
2026-06-04T13:05:23.0808595Z           "evidence": [
2026-06-04T13:05:23.0809014Z             {
2026-06-04T13:05:23.0809725Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T13:05:23.0810181Z               "line": 210
2026-06-04T13:05:23.0810604Z             },
2026-06-04T13:05:23.0811015Z             {
2026-06-04T13:05:23.0811696Z               "path": "crates/spt-daemon/src/propagate.rs",
2026-06-04T13:05:23.0812144Z               "line": 294
2026-06-04T13:05:23.0812568Z             },
2026-06-04T13:05:23.0812970Z             {
2026-06-04T13:05:23.0813621Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0814083Z               "line": 29
2026-06-04T13:05:23.0814503Z             },
2026-06-04T13:05:23.0814925Z             {
2026-06-04T13:05:23.0815586Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0816049Z               "line": 126
2026-06-04T13:05:23.0816467Z             },
2026-06-04T13:05:23.0822114Z             {
2026-06-04T13:05:23.0822872Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0823327Z               "line": 138
2026-06-04T13:05:23.0823751Z             },
2026-06-04T13:05:23.0824159Z             {
2026-06-04T13:05:23.0824809Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0825256Z               "line": 220
2026-06-04T13:05:23.0825685Z             },
2026-06-04T13:05:23.0826107Z             {
2026-06-04T13:05:23.0826746Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0827203Z               "line": 301
2026-06-04T13:05:23.0827615Z             },
2026-06-04T13:05:23.0828065Z             {
2026-06-04T13:05:23.0828694Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T13:05:23.0829151Z               "line": 149
2026-06-04T13:05:23.0829644Z             }
2026-06-04T13:05:23.0830056Z           ]
2026-06-04T13:05:23.0830478Z         },
2026-06-04T13:05:23.0830891Z         "int": {
2026-06-04T13:05:23.0831368Z           "complete": false,
2026-06-04T13:05:23.0831815Z           "evidence": []
2026-06-04T13:05:23.0832239Z         },
2026-06-04T13:05:23.0832672Z         "unit": {
2026-06-04T13:05:23.0833138Z           "complete": true,
2026-06-04T13:05:23.0833589Z           "evidence": [
2026-06-04T13:05:23.0833997Z             {
2026-06-04T13:05:23.0834651Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0835095Z               "line": 386
2026-06-04T13:05:23.0835512Z             },
2026-06-04T13:05:23.0835929Z             {
2026-06-04T13:05:23.0836571Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0837029Z               "line": 431
2026-06-04T13:05:23.0837437Z             },
2026-06-04T13:05:23.0837851Z             {
2026-06-04T13:05:23.0838499Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0838954Z               "line": 445
2026-06-04T13:05:23.0839420Z             },
2026-06-04T13:05:23.0839838Z             {
2026-06-04T13:05:23.0840487Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0840933Z               "line": 456
2026-06-04T13:05:23.0841358Z             },
2026-06-04T13:05:23.0841765Z             {
2026-06-04T13:05:23.0842403Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0842855Z               "line": 532
2026-06-04T13:05:23.0843267Z             },
2026-06-04T13:05:23.0843687Z             {
2026-06-04T13:05:23.0844318Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T13:05:23.0844773Z               "line": 326
2026-06-04T13:05:23.0845191Z             },
2026-06-04T13:05:23.0845885Z             {
2026-06-04T13:05:23.0846539Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T13:05:23.0846986Z               "line": 339
2026-06-04T13:05:23.0847541Z             },
2026-06-04T13:05:23.0847958Z             {
2026-06-04T13:05:23.0848666Z               "path": "crates/spt-daemon/tests/propagate.rs",
2026-06-04T13:05:23.0849119Z               "line": 242
2026-06-04T13:05:23.0849576Z             }
2026-06-04T13:05:23.0849999Z           ]
2026-06-04T13:05:23.0850406Z         }
2026-06-04T13:05:23.0850826Z       }
2026-06-04T13:05:23.0851230Z     },
2026-06-04T13:05:23.0851645Z     {
2026-06-04T13:05:23.0852106Z       "id": "REQ-UPD-3",
2026-06-04T13:05:23.0853115Z       "title": "No endpoint process terminates/suspends during self-update",
2026-06-04T13:05:23.0853597Z       "requiredStages": [
2026-06-04T13:05:23.0854015Z         "impl",
2026-06-04T13:05:23.0854439Z         "unit",
2026-06-04T13:05:23.0854845Z         "int"
2026-06-04T13:05:23.0855254Z       ],
2026-06-04T13:05:23.0855701Z       "stages": {
2026-06-04T13:05:23.0856121Z         "doc": {
2026-06-04T13:05:23.0856592Z           "complete": false,
2026-06-04T13:05:23.0857057Z           "evidence": []
2026-06-04T13:05:23.0857474Z         },
2026-06-04T13:05:23.0857897Z         "impl": {
2026-06-04T13:05:23.0858371Z           "complete": true,
2026-06-04T13:05:23.0858816Z           "evidence": [
2026-06-04T13:05:23.0859262Z             {
2026-06-04T13:05:23.0859915Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T13:05:23.0860355Z               "line": 26
2026-06-04T13:05:23.0860775Z             },
2026-06-04T13:05:23.0861187Z             {
2026-06-04T13:05:23.0861829Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T13:05:23.0862283Z               "line": 111
2026-06-04T13:05:23.0862693Z             },
2026-06-04T13:05:23.0863122Z             {
2026-06-04T13:05:23.0863763Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T13:05:23.0864221Z               "line": 213
2026-06-04T13:05:23.0864650Z             }
2026-06-04T13:05:23.0865070Z           ]
2026-06-04T13:05:23.0865489Z         },
2026-06-04T13:05:23.0865923Z         "int": {
2026-06-04T13:05:23.0866393Z           "complete": true,
2026-06-04T13:05:23.0866837Z           "evidence": [
2026-06-04T13:05:23.0867256Z             {
2026-06-04T13:05:23.0867956Z               "path": "crates/spt-daemon/tests/brain_swap.rs",
2026-06-04T13:05:23.0868404Z               "line": 23
2026-06-04T13:05:23.0868821Z             }
2026-06-04T13:05:23.0869264Z           ]
2026-06-04T13:05:23.0869683Z         },
2026-06-04T13:05:23.0870109Z         "unit": {
2026-06-04T13:05:23.0870578Z           "complete": true,
2026-06-04T13:05:23.0871022Z           "evidence": [
2026-06-04T13:05:23.0871445Z             {
2026-06-04T13:05:23.0872089Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T13:05:23.0872533Z               "line": 238
2026-06-04T13:05:23.0872956Z             },
2026-06-04T13:05:23.0873371Z             {
2026-06-04T13:05:23.0874025Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T13:05:23.0874465Z               "line": 262
2026-06-04T13:05:23.0874895Z             },
2026-06-04T13:05:23.0875313Z             {
2026-06-04T13:05:23.0875950Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T13:05:23.0876401Z               "line": 273
2026-06-04T13:05:23.0876808Z             },
2026-06-04T13:05:23.0877230Z             {
2026-06-04T13:05:23.0877868Z               "path": "crates/spt-daemon/src/update.rs",
2026-06-04T13:05:23.0878332Z               "line": 286
2026-06-04T13:05:23.0878752Z             }
2026-06-04T13:05:23.0879193Z           ]
2026-06-04T13:05:23.0879616Z         }
2026-06-04T13:05:23.0880025Z       }
2026-06-04T13:05:23.0880439Z     },
2026-06-04T13:05:23.0880837Z     {
2026-06-04T13:05:23.0881298Z       "id": "REQ-UPD-4",
2026-06-04T13:05:23.0882358Z       "title": "Update gated on user confirmation by default; opt-in full-auto",
2026-06-04T13:05:23.0882992Z       "requiredStages": [
2026-06-04T13:05:23.0883427Z         "impl",
2026-06-04T13:05:23.0883844Z         "unit"
2026-06-04T13:05:23.0884265Z       ],
2026-06-04T13:05:23.0884841Z       "stages": {
2026-06-04T13:05:23.0885275Z         "doc": {
2026-06-04T13:05:23.0885753Z           "complete": false,
2026-06-04T13:05:23.0886204Z           "evidence": []
2026-06-04T13:05:23.0886652Z         },
2026-06-04T13:05:23.0887155Z         "impl": {
2026-06-04T13:05:23.0887639Z           "complete": true,
2026-06-04T13:05:23.0888086Z           "evidence": [
2026-06-04T13:05:23.0888514Z             {
2026-06-04T13:05:23.0889228Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T13:05:23.0889697Z               "line": 23
2026-06-04T13:05:23.0890123Z             },
2026-06-04T13:05:23.0890537Z             {
2026-06-04T13:05:23.0891192Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T13:05:23.0891634Z               "line": 56
2026-06-04T13:05:23.0892061Z             },
2026-06-04T13:05:23.0892489Z             {
2026-06-04T13:05:23.0893129Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T13:05:23.0893576Z               "line": 77
2026-06-04T13:05:23.0893998Z             },
2026-06-04T13:05:23.0894418Z             {
2026-06-04T13:05:23.0895073Z               "path": "crates/spt-daemon/src/lifecycle.rs",
2026-06-04T13:05:23.0895526Z               "line": 179
2026-06-04T13:05:23.0895946Z             },
2026-06-04T13:05:23.0896349Z             {
2026-06-04T13:05:23.0896977Z               "path": "crates/spt-daemon/src/notif.rs",
2026-06-04T13:05:23.0897413Z               "line": 98
2026-06-04T13:05:23.0897842Z             },
2026-06-04T13:05:23.0898252Z             {
2026-06-04T13:05:23.0898862Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:23.0899351Z               "line": 139
2026-06-04T13:05:23.0899768Z             }
2026-06-04T13:05:23.0905638Z           ]
2026-06-04T13:05:23.0906195Z         },
2026-06-04T13:05:23.0906633Z         "int": {
2026-06-04T13:05:23.0907137Z           "complete": false,
2026-06-04T13:05:23.0907591Z           "evidence": []
2026-06-04T13:05:23.0908010Z         },
2026-06-04T13:05:23.0908443Z         "unit": {
2026-06-04T13:05:23.0908917Z           "complete": true,
2026-06-04T13:05:23.0909451Z           "evidence": [
2026-06-04T13:05:23.0909873Z             {
2026-06-04T13:05:23.0910522Z               "path": "crates/spt-daemon/src/config.rs",
2026-06-04T13:05:23.0910973Z               "line": 309
2026-06-04T13:05:23.0911395Z             },
2026-06-04T13:05:23.0911801Z             {
2026-06-04T13:05:23.0912449Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T13:05:23.0912892Z               "line": 102
2026-06-04T13:05:23.0913311Z             },
2026-06-04T13:05:23.0913719Z             {
2026-06-04T13:05:23.0914371Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T13:05:23.0914824Z               "line": 117
2026-06-04T13:05:23.0915234Z             },
2026-06-04T13:05:23.0915663Z             {
2026-06-04T13:05:23.0916303Z               "path": "crates/spt-daemon/src/consent.rs",
2026-06-04T13:05:23.0916756Z               "line": 136
2026-06-04T13:05:23.0917177Z             },
2026-06-04T13:05:23.0917595Z             {
2026-06-04T13:05:23.0918199Z               "path": "crates/spt-store/src/info.rs",
2026-06-04T13:05:23.0918639Z               "line": 308
2026-06-04T13:05:23.0919057Z             },
2026-06-04T13:05:23.0919505Z             {
2026-06-04T13:05:23.0920117Z               "path": "crates/spt-store/src/perch.rs",
2026-06-04T13:05:23.0920571Z               "line": 442
2026-06-04T13:05:23.0920981Z             }
2026-06-04T13:05:23.0921399Z           ]
2026-06-04T13:05:23.0921806Z         }
2026-06-04T13:05:23.0922220Z       }
2026-06-04T13:05:23.0922621Z     },
2026-06-04T13:05:23.0923036Z     {
2026-06-04T13:05:23.0923484Z       "id": "REQ-UPD-5",
2026-06-04T13:05:23.0924275Z       "title": "spt-core ripple-updates registered adapters",
2026-06-04T13:05:23.0924758Z       "requiredStages": [
2026-06-04T13:05:23.0925436Z         "impl",
2026-06-04T13:05:23.0925857Z         "unit"
2026-06-04T13:05:23.0926259Z       ],
2026-06-04T13:05:23.0926830Z       "stages": {
2026-06-04T13:05:23.0927250Z         "doc": {
2026-06-04T13:05:23.0927722Z           "complete": false,
2026-06-04T13:05:23.0928176Z           "evidence": []
2026-06-04T13:05:23.0928581Z         },
2026-06-04T13:05:23.0929012Z         "impl": {
2026-06-04T13:05:23.0929682Z           "complete": true,
2026-06-04T13:05:23.0930494Z           "evidence": [
2026-06-04T13:05:23.0930991Z             {
2026-06-04T13:05:23.0931915Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0932429Z               "line": 27
2026-06-04T13:05:23.0932869Z             },
2026-06-04T13:05:23.0933286Z             {
2026-06-04T13:05:23.0934062Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0934530Z               "line": 82
2026-06-04T13:05:23.0934983Z             },
2026-06-04T13:05:23.0935448Z             {
2026-06-04T13:05:23.0936208Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0936715Z               "line": 134
2026-06-04T13:05:23.0937168Z             },
2026-06-04T13:05:23.0937599Z             {
2026-06-04T13:05:23.0938268Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0938754Z               "line": 260
2026-06-04T13:05:23.0939279Z             },
2026-06-04T13:05:23.0940056Z             {
2026-06-04T13:05:23.0940758Z               "path": "crates/spt-daemon/src/release.rs",
2026-06-04T13:05:23.0941261Z               "line": 288
2026-06-04T13:05:23.0941706Z             }
2026-06-04T13:05:23.0942160Z           ]
2026-06-04T13:05:23.0942605Z         },
2026-06-04T13:05:23.0943068Z         "int": {
2026-06-04T13:05:23.0943584Z           "complete": false,
2026-06-04T13:05:23.0944247Z           "evidence": []
2026-06-04T13:05:23.0944764Z         },
2026-06-04T13:05:23.0945265Z         "unit": {
2026-06-04T13:05:23.0945862Z           "complete": true,
2026-06-04T13:05:23.0946390Z           "evidence": [
2026-06-04T13:05:23.0946847Z             {
2026-06-04T13:05:23.0947763Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0948216Z               "line": 194
2026-06-04T13:05:23.0948652Z             },
2026-06-04T13:05:23.0949069Z             {
2026-06-04T13:05:23.0949884Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0950351Z               "line": 208
2026-06-04T13:05:23.0950772Z             },
2026-06-04T13:05:23.0951196Z             {
2026-06-04T13:05:23.0951926Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0952383Z               "line": 222
2026-06-04T13:05:23.0952794Z             },
2026-06-04T13:05:23.0953216Z             {
2026-06-04T13:05:23.0953945Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0954402Z               "line": 236
2026-06-04T13:05:23.0954841Z             },
2026-06-04T13:05:23.0955252Z             {
2026-06-04T13:05:23.0955984Z               "path": "crates/spt-daemon/src/adapter_update.rs",
2026-06-04T13:05:23.0956446Z               "line": 270
2026-06-04T13:05:23.0956874Z             },
2026-06-04T13:05:23.0957299Z             {
2026-06-04T13:05:23.0958293Z               "path": "crates/spt-runtime/src/manifest.rs",
2026-06-04T13:05:23.0958764Z               "line": 740
2026-06-04T13:05:23.0959208Z             }
2026-06-04T13:05:23.0959648Z           ]
2026-06-04T13:05:23.0960061Z         }
2026-06-04T13:05:23.0960485Z       }
2026-06-04T13:05:23.0960906Z     }
2026-06-04T13:05:23.0961307Z   ],
2026-06-04T13:05:23.0961753Z   "findings": []
2026-06-04T13:05:23.0962157Z }
